我有一个复选框,这些复选框是使用while语句中的数据库动态生成的,如下所示:
while($getplands = mysqli_fetch_assoc($getplanresults)){
<tr>
<td><input class="thisinput" type="checkbox" value="'.$getplands['id'].'"></td>
</tr>
}
当用户点击复选框时,必须发生两件事
如果我使用下面的代码,复选框不会检查,但我能够使用ajax从数据库中获取数据并显示用户选择。
$('.thisinput').click(function(e){//a checkbox is checked
$(this).prop('checked', true);//does not work here
$.ajax({//works here
type: 'POST',
url: 'fetch.php',
data:values,
dataType: 'json',
success: function(datas)
{
$('#mychoice > tbody:last').append(datas.mychoice);
}
});
});
如果我使用下面的代码,则选中该复选框,但我无法使用ajax从数据库中获取数据并显示用户选择。
$('.thisinput').on('change', 'input:checkbox', function(){
$(this).prop('checked', true);//works here
$.ajax({//does not work here
type: 'POST',
url: 'fetch.php',
data:values,
dataType: 'json',
success: function(datas)
{
$('#mychoice > tbody:last').append(datas.mychoice);
}
});
});
好吧所以我只是解决了这个问题。下面的代码适合我。
$('.thisinput').on('change',function(){
$(this).prop('checked', true);//works here
$.ajax({//works here
type: 'POST',
url: 'fetch.php',
data:values,
dataType: 'json',
success: function(datas)
{
$('#mychoice > tbody:last').append(datas.mychoice);
}
});
});