2015-05-04 98 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响应应该加上第一个下拉列表的变化。