我已经制作了一个动态添加复选框的脚本。它的工作原理如下:
$.ajax({
type: "POST",
async:false,
url: base_url+"rapportage/get/leerlingen/coach/"+coach_id+"/",
success: function(data){
$.each($.parseJSON(data), function(i,item)
{
$('.select-leerlingen ul').append('<li><input type="checkbox" class="leerling" name="leerling" value="'+item.id+'"> '+item.voornaam+' '+item.tussenvoegsel+' '+item.achternaam+'</li>');
});
}});
在此操作之后,我尝试索引这些复选框:
$('#submit').click( function(event) {
var values_data = $('input:checkbox:checked.data').map(function () {
return this.value;
}).get();
var values_leerlingen = $('input:checkbox:checked.leerling').map(function () {
return this.value;
}).get();
// Met AJAX naar de database doorvoeren
$.ajax({
type: "POST",
async:false,
url: base_url+"rapportage/saveForSession/",
data: {data:values_data, leerlingen:values_leerlingen}
});
});
有时它工作正常。但在很多情况下,如果选中复选框,则varbele:values_leerlingen为空。无法再找到动态添加的复选框或类似的东西。
有人知道我做错了什么吗?谢谢!
答案 0 :(得分:0)
根据评论编辑我的答案抱歉.live()已从新的jQuery中删除 您可以使用&#39;
答案 1 :(得分:0)
尝试:
$(document).on('click','#submit', function(event) {
var values_data = $('input:checkbox:checked.data').map(function () {
return this.value;
}).get();
var values_leerlingen = $('input:checkbox:checked.leerling').map(function () {
return this.value;
}).get();
// Met AJAX naar de database doorvoeren
$.ajax({
type: "POST",
async:false,
url: base_url+"rapportage/saveForSession/",
data: {data:values_data, leerlingen:values_leerlingen}
});
});