チェンジセット 289 : SPARQLBuilderWWW

差分発生行の前後
無視リスト:
更新日時:
2016/06/16 17:30:26 (8 年 前)
更新者:
lenz
ログメッセージ:

エンドポイントリスト取得方式の変更
非推奨の非同期通信を取りやめセレクトボックスのdisabledでユーザーアクションを縛る方式に変更

ファイル:
1 変更

凡例:

変更なし
追加
削除
  • SPARQLBuilderWWW/web/newsparqlbuilder.js

    r288 r289  
    133133                if(eplist.length == 0){ 
    134134                        $('.SBEndPointSelect').on('epcomplete', function(){ 
    135                                 $('.SBEndPointSelect').val(defendpoint); 
     135                                $('.SBEndPointSelect option').each(function(){ 
     136                                        if($(this).text() == defendpoint){ 
     137                                                $(this).attr('selected', 'selected'); 
     138                                        } 
     139                                }); 
    136140                                defendpoint = ""; 
    137141                                loadStartClassList(); 
     
    139143                        }); 
    140144                }else{ 
    141                         $('.SBEndPointSelect').val(defendpoint); 
     145                        $('.SBEndPointSelect option').each(function(){ 
     146                                if($(this).text() == defendpoint){ 
     147                                        $(this).attr('selected', 'selected'); 
     148                                } 
     149                        }); 
    142150                        defendpoint = ""; 
    143151                        loadStartClassList(); 
     
    199207        $('.SBPermaLinkButton').attr('disabled', true); 
    200208        var url = 'http://www.sparqlbuilder.org/api/eplist?ds=true'; 
     209        $(".SBEndPointSelect").empty(); 
     210        $(".SBEndPointSelect").attr("disabled", "disabled"); 
     211        $(".SBStartClassSelect").empty(); 
     212        $(".SBStartClassSelect").attr("disabled", "disabled"); 
     213        $(".SBEndClassSelect").empty(); 
     214        $(".SBEndClassSelect").attr("disabled", "disabled"); 
    201215        $.ajax({ 
    202216                url: url, 
     
    207221                        for (var i = 0; i < list.length; ++i) { 
    208222                                $(".SBEndPointSelect").append('<option value="' + list[i]['uri'] + '">' + list[i]['label'] + '</option>'); 
    209                                 switchLoadIcon("hide"); 
     223                                if(defendpoint == ''){ 
     224                                        switchLoadIcon("hide"); 
     225                                } 
    210226                                if($('.SBModalView').attr('display') == 'block'){ 
    211227                                        $(".SBEndPointSelect").select2(); 
     
    214230                                } 
    215231                        } 
     232                        $(".SBEndPointSelect").removeAttr("disabled"); 
    216233                        $(".SBEndPointSelect").trigger(new $.Event('epcomplete')); 
    217234                }, 
     
    220237 
    221238changeEndPoint = function() { 
    222         endpoint = $(".SBEndPointSelect").val(); 
     239        endpoint = $(".SBEndPointSelect option:selected").text(); 
    223240        if(endpoint != "SBDefault"){ 
    224241                loadStartClassList(); 
     
    229246        $('.SBPermaLinkButton').attr('disabled', true); 
    230247        var url = "http://www.sparqlbuilder.org/api/clist?ep=" + encodeURIComponent(endpoint); 
     248        $(".SBStartClassSelect").empty(); 
     249        $(".SBStartClassSelect").attr("disabled", "disabled"); 
     250        $(".SBEndClassSelect").empty(); 
     251        $(".SBEndClassSelect").attr("disabled", "disabled"); 
    231252        $.ajax({ 
    232253                type : "GET", 
    233254                url : url, 
    234                 async : false, 
     255                //async : false, 
    235256                success : function(data) { 
    236257                        var list = eval(data); 
    237258                        $(".SBStartClassSelect").empty(); 
    238                         $(".SBEndClassSelect").empty(); 
    239259                        $(".SBStartClassSelect").append('<option value="SBDefault">SELECT StartClass (From ' + list.length + ' classes below)</option>'); 
    240260                        for (var i = 0; i < list.length; ++i) { 
    241261                                $(".SBStartClassSelect").append('<option value="' + list[i]['uri'] + '">' + list[i]['label'] + ' (' + list[i]['number'] + ')' + '</option>'); 
    242262                        } 
     263                        $(".SBStartClassSelect").removeAttr("disabled"); 
    243264                        $(".SBStartClassSelect").select2(); 
    244265                        $(".SBEndClassSelect").select2(); 
     
    254275                type : "GET", 
    255276                url : url, 
    256                 async : false, 
     277                //async : false, 
    257278                success : function(data) { 
    258279                        var list = eval(data); 
     
    262283                                $(".SBEndClassSelect").append('<option value="' + list[i]['uri'] + '">' + list[i]['label'] + ' (' + list[i]['number'] + ')' + '</option>'); 
    263284                        } 
     285                        $(".SBEndClassSelect").removeAttr("disabled"); 
    264286                        $(".SBStartClassSelect").select2(); 
    265287                        $(".SBEndClassSelect").select2();