如何从ajax调用更新和发布复选框的值
我从MySQL表中检索数据到HTML页面即
$query="select * from student"; $result=mysql_query($query)or die(mysql_error()); while($rs=mysql_fetch_array($result)) { ?> <tr> <td align="center"><?php echo $rs['st_id']; ?></td> <td align="center"><?php echo $rs['name']"; ?></td> <td align="center"><input type="checkbox" name="checked[]" <?php if($rs['checked']==1){echo "checked"; } ?> /></td> <td align="center"><a href="delete_student.php?id="><img src="images/delete_icon.png" alt="Delete" /></a></td> <td align="center"><a href="update_student.php?id="><img src="images/update.png" alt="Update" /></a></td>
这是给我的输出
假设检查id 1的复选框并从mysql表中检索。
现在我想要做的是,当我检查两个复选框到这个表中,并调用一个函数到ajax去php页面并根据给定的id更新选中字段的值(即在这种情况下2和3 )。 不刷新整个页面,也不更新整个记录只是复选框的值。
我是新来的阿贾克斯,所以任何帮助将不胜感激。
是的,探索jqGrid并不是浪费时间。 但是,因为您只想更改复选框值更新。 以下是你可以做的事情..
<input type="checkbox" name="check1" />
和..
$().ready(function(){
var st_id = <?php echo $rs['st_id']; ?>;
//Or you could use a hidden field in the form
$(':checkbox').click(function(){
var chkName = $(this).attr('name');
var checkVal = $(':checkbox[name='+chkName+']').attr('checked');//true or false
$.ajax({
url: 'MyApp/update.php?checboxName=' + checkVal,//Do update on server-side
success: function(data) {
alert('Updated successful.');
}
});
});
});
另外,你可以做一个$('formID').serialize()
将返回所有表单元素的名称=值对,然后可以将其添加到您的PHP脚本的调用中。
上一篇: how to update and post the value of checkbox from ajax call