2015-05-04 60 views
1
<form:select id="businesstype" name="businesstype" path="businesstype" > 
    <c:forEach items="${businesstype}" var="items"> 
    <option value="${items.businessTypeMstrId}" >"${items.businessTypeName}"  </option> 
</c:forEach> 
</form:select> 

<select id="stateId" multiple="multiple"> 
    <option value="">Select State</option> 
</select> 
<script> 





$("select#businesstype").change(function(){ 
      $.getJSON("reguser/loadStates",{countryId: 2}, function(j){ 
       //alret(j); 
       var options = ''; 
       for (var i = 0; i < j.length; i++) { 
        //options += '<option value="' + j[i].id + '">' + j[i].name + '</option>'; 
        options += '<option value="' + j[i]+ '">' + j[i] + '</option>'; 
        // alert(j[i]); 

        var option = document.createElement("option"); 
        option.text = j[i]; 
        // option.value = j[i]; 
        var select = document.getElementById("productSelect"); 
        select.appendChild(option); 
        alert(select); 


       } 
       $('stateId').empty().append('<option value=1>My option</option><option value=1>My option77</option>'); //This line is not working 

       }); 


      }); 

</script> 

嗨工作動態,我是新來的jQuery的時候我給它一個jQuery事件中我下面的代碼不能正常工作,但是當我把它裏面的JavaScript沒有任何jQuery的事件它的工作。我的完整代碼如上所述。jQuery的多選是不是平變化

$('stateId').empty().append('<option value=1>My option</option><option value=1>My option77</option>'); //This line is not working 
+0

不工作意味着改變事件沒有被解僱,是嗎? –

+0

$('stateId')假設爲Class或ID $('#stateId')或$('。stateId') –

回答

0

你缺少文檔準備代碼:

$(function() { //<-- missing this 
    $("#businesstype").change(function(){ 
    // 
    }); 
}); 
-1

變化事件被解僱和Ajax響應也是我得到正確的。但是,我希望添加到下一個多選下拉列表中的ajax響應,我在下面的行中寫入了change事件。

$('#stateId').empty().append(options); //This line is not working 

但是我的ajax響應沒有添加在這個多選下拉菜單中。我正在使用以下API。

<script type="text/javascript" src="<%=request.getContextPath()%>/css/multiSelect/js/bootstrap-2.3.2.min.js"> </script> 
<script type="text/javascript" src="<%=request.getContextPath()%>/css/multiSelect/js/bootstrap-multiselect.js"> </script> 

此代碼的預期輸出,它將在下拉菜單中創建複選框。 (用於多選)

如果我在改變事件之外編寫這段代碼,我會得到預期的結果。但我需要ajax響應應該加上第一個下拉列表的變化。