$(document).ready(function() {
$('#somebutton').click(function() {
$.get('List', function(responseJson) {
$.each(responseJson, function(index, item) {
var elem=$('<input type="checkbox" id="item" value='+item+'/> ' + item + '<br />');
$('#somediv').append('<input type="checkbox" id="item" value='+item+'/> ' + item + '<br />');
});
$('#somediv').append('<button id="newButton">'+"retrieve"+'</button> <br />');
});
});
$("#newButton").click(function(){
var data = { 'checkBoxList[]' : []};
var list=$(":input:item:checked");
$(list.each(function() {
data['checkBoxList[]'].push($(this).val());
}));
$.get("Data",data,function(responseText){
$('#somediv').text(responseText);
});
});
});
(我是jQuery的新手) 我想做的是 调用一个servlet,然后给我一些复选框列表
选择所需的,然后再次提交给另一个servlet 它从复选框中获取输入 根据选择显示信息。
从servlet获取复选框列表工作正常,它也动态创建一个按钮 当我点击按钮时,它什么也没做,我不知道为什么
答案 0 :(得分:0)
首先,我可以使用class
,因为在您当前的实现中,您最终可能会使用具有相同ID的多个按钮。
所以你可以做的是:
$(".newButton").live('click', function(){
var data = { 'checkBoxList[]' : []};
var list=$(":input:item:checked");
$(list.each(function() {
data['checkBoxList[]'].push($(this).val());
})); //why is this like this *
$.get("Data",data,function(responseText){
$('#somediv').text(responseText);
});
});
我也不确定你在这做什么:
$(list.each(function() {
data['checkBoxList[]'].push($(this).val());
})); //why is this like this *
只是做:
list.each(function() {
data['checkBoxList[]'].push($(this).val());
});