0
我已经做了一个过程,而选择框的Onclick,从弹簧控制器获取ajax响应并将其加载到选择框中,值被加载,但每当我选择其中的值,默认情况下只选择第一个值,而不是能够选择其他值。为什么在Jquery中只选择了第一个选择框的值?
无论何时单击复选框,首次从模型中加载选择框,从下一次点击复选框需要通过onclick加载,我已在下面完成。
注:有n个复选框的数目在JSP页
更新的代码:eventhough值以升序顺序加载在
$("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 ? </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。
帮助表示赞赏,感谢
你可以显示'data'和'#category'的实际外观吗? – 31piy
值看起来像{“月”,“月”,“数据类型5”:“数据类型5”,“数据类型3”:“数据类型3”,“数据类型4”:“类型OF DATA 4“} –
'只要我选择其中的值,默认情况下只选择第一个值'=>其中是您的值选择代码? –