2015-05-04 5 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 MultiSelect не работает динамически OnChange

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

не работает означает, что событие изменения не срабатывает, не так ли? –

+0

$ ('stateId') должно быть классом или ID $ ('# stateId') или $ ('. StateId') –

ответ

0

Вы пропускаете документ готовый код:

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

событие изменения уволят и Ajax ответ также я получаю правильно. Но этот ответ ajax, который я хочу добавить в следующий всплывающий всплывающий снимок, я написал как строка в событии изменения.

$('#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, который должен добавить к изменению первого выпадающего списка.

Смежные вопросы