チェンジセット 230 : SPARQLBuilderWWW/web

差分発生行の前後
無視リスト:
更新日時:
2015/02/03 13:04:51 (10 年 前)
更新者:
kozaki
ログメッセージ:

検索結果のCSVダウンロード
ページ上部のロゴを追加

ファイル:
1 変更

凡例:

変更なし
追加
削除
  • SPARQLBuilderWWW/web/dist.html

    r225 r230  
    88<script src="./d3.v3.min.js" charset="utf-8"></script> 
    99<script src="./sparqlbuilder.js"></script> 
     10<script type="text/javascript" src="http://uedayou.net/SPARQLTimeliner/js_sparql/sparql.js" charset="UTF-8"></script> 
    1011<!-- script src="./sb-test.js"></script --> 
    1112<script> 
     
    4243} 
    4344 
     45function sendSPARQL2(){ 
     46        var ep = $("*[name=selectendpoint]").val(); 
     47 
     48        if(ep == "input"){ 
     49                ep = $("*[name=inputendpoint]").val(); 
     50        } 
     51 
     52        var query = $("*[name=sparql]").val().replace(/[\n\r]/g,""); 
     53 
     54        //query = encodeURIComponent(query); 
     55         
     56                qr = sendQuery(ep,query); 
     57         
     58                qr.fail( 
     59                        function (xhr, textStatus, thrownError) { 
     60                                alert("Error: A '" + textStatus+ "' occurred."); 
     61                        } 
     62                ); 
     63                qr.done( 
     64                        function (d) { 
     65                                download_result(d.results.bindings); 
     66                        } 
     67                ); 
     68} 
     69 
     70function download_result(data){ 
     71 
     72        if (data instanceof Array) { 
     73                var result_txt ="";  
     74         
     75                var i=0; 
     76                for ( var key in data[0]) { 
     77                        if(i>0){result_txt +=",";} 
     78                        result_txt += key;  
     79                        i++; 
     80                } 
     81                 
     82                result_txt += "\n"; 
     83 
     84                for (var d = 0; d < data.length; d++) { 
     85                        var i = 0; 
     86                        for ( var key in data[d]) { 
     87                                if(i>0){result_txt +=",";} 
     88                                result_txt += data[d][key].value;  
     89                                i++; 
     90                        } 
     91                        result_txt += '\n'; 
     92                } 
     93         
     94                var blob = new Blob( [result_txt], {type: 'text/plain'} ) 
     95 
     96                var link = document.createElement('a') 
     97                link.href = URL.createObjectURL(blob) 
     98                link.download = 'result' + '.csv' 
     99 
     100                document.body.appendChild(link) // for Firefox 
     101                link.click() 
     102                document.body.removeChild(link) // for Firefox 
     103        } 
     104}; 
     105 
     106 
    44107--> 
    45108</script> 
     
    47110</head> 
    48111<body> 
     112<div id="sbtop"><img src="http://www.sparqlbuilder.org/img/sblogo.png"></div> 
     113 
    49114    <div> 
    50115        <form> 
     
    53118            <br/> 
    54119            <textarea id="sparql" name="sparql" cols="60" rows="10"></textarea><br/> 
    55             <input type="button" name="sendsparql" value="Send SPARQL" onClick="sendSPARQL()"><br/> 
     120            <input type="button" name="sendsparql" value="Send SPARQL" onClick="sendSPARQL()"> 
     121            <input type="button" name="sendsparql" value="Download Result" onClick="sendSPARQL2()"><br/> 
    56122        </form> 
    57123    </div>