2017-07-27 21 views
0

私は選択ボックスのOnclick中に、スプリングコントローラからajaxレスポンスを取得し、selectboxにロードしますが、値はロードされますが、値を選択するたびに、最初の値のみがデフォルトで選択されます他の値を選択することができます。Jqueryで選択ボックスの最初の値だけが選択されているのはなぜですか?

チェックボックスがクリックされるたびに、モデルから選択ボックスが最初に読み込まれ、次のチェックボックスから、私が下に行ったonclickによってロードする必要があります。

注: JSPページ内のチェックボックスの数

更新されたコードがありn個:

$("input:checkbox").click(
    function() { 
    if ($(this).is(':checked')) { 
     checkboxID=$(this).attr('id'); 
     var htmlStr = '<div class="form"><form:form id="form" method="POST" action="mapping">' 
       +'<label> Map the Selected field to Category ? &nbsp; &nbsp; &nbsp; &nbsp; </label>' 
       + '<br>' 
       + '<br>' 
       + '<br>'    
       + '<select id="category" name="category">' 
       + '<c:forEach var="categoryList" items="${categoryList}">' 
       + '<option value="${categoryList.category}"> <c:out value="${categoryList.category}" /></option>' 
       + '</c:forEach>' 
       + '</select>' 
       + '<br>' 
       + '<br>' 
       + '<br>' 
       + '<input type="button" name="mapBtn" id="mapBtn" value="MAP" class="ui-button ui-widget ui-corner-all"' 
       + '</form:form></div>'; 
     $.fancybox.open(htmlStr,{ 
     'width'   : 950, 
     'height'   : 1100, 
     'autoScale'  : false, 
     'transitionIn' : 'none', 
     'transitionOut' : 'none', 
     'hideOnContentClick' : false 

    }); 
    } 



    var data = $("#form").serializeArray(); 

    if(!isFirstSelect){ 
    $("#category").click(function(){ 
     $.ajax({ 
      type: "POST", 
      url: "loadSelectBox", 
      dataType: 'json', 
      contentType : "application/json; charset=utf-8", 
      success: function(data){ 
       $("#category").empty(); 
       var options = ''; 
       for(var key in data){ 
        options += "<option value='" + data[key] + "'>" + data[key] + "</option>"; 
       } 
       $("#category").append(options); 
      }, 
      error: function(response){ 
       console.log(response) 
      }, 
     }); 

    }) 
    } 

値がで昇順順にロードされている本家の選択ボックス内に取り込まれたデータは、昇順ではないがコントローラのJSONObject。

ヘルプは高く評価され、感謝

+0

「データ」と「#カテゴリ」が実際にどのように見えるかを表示できますか? – 31piy

+0

値は、「月」「月」「データの種類5」「データの種類5」「データの種類3」「データの種類3」「データの種類4」:「TYPE OF DATA 4 "} –

+0

'値を選択するたびに、最初の値のみがデフォルトで選択されます。 '=>あなたの値選択コードはどこですか? –

答えて

0

私は「後負荷」を使用して行っている

$.fancybox 
.open(
    htmlStr, 
    { 
     'width'   : 950, 
     'height'   : 1100, 
     'autoScale'  : false, 
     'transitionIn' : 'none', 
     'transitionOut' : 'none', 
     'hideOnContentClick' : false, 
     'afterLoad': function(){ 
      if(!isFirstSelect){ 
      $.ajax({ 
       type: "POST", 
       url: "loadSelectBox", 
       dataType: 'json', 
       contentType : "application/json; charset=utf-8", 
       success: function(data){ 
        $("#category").empty(); 
        var options = ''; 
        for(var key in data){ 
         options += "<option value='" + data[key] + "'>" + data[key] + "</option>"; 
        } 
        $("#category").append(options); 
        }, 
        error: function(response){ 
         console.log(response) 
        }, 
       }); 
      } 
      } 
     }); 

、ソリューションを自分自身を発見:化粧箱に助けを

感謝のロード中。

関連する問題