在我工作的表格中有很多复选框。我想使用jquery ajax,以便每次用户点击复选框时发布值。它应该像下面的代码,但我不确定。它不起作用。
<script type="text/javascript" >
$(function() {
$(".autosubmit_checkbox").click(function() {
var value = $(this).val();
var name = $(this).attr('name');;
var dataString = 'value=' + value + '&name=' + name;
$.ajax({
type: "POST",
url: "URL",
data: dataString,
success: function(){
something;
}
});
return false;
});
});
</script>
答案 0 :(得分:0)
<script type="text/javascript" >
$(function() {
$(".autosubmit_checkbox").click(function() {
var value = $(this).is(':checked')?"1":"0";
var name = $(this).attr('name');;
var dataString = 'value=' + value + '&name=' + name;
$.ajax({
type: "POST",
url: "URL",
data: dataString,
success: function(){
something;
}
});
return false;
});
});
</script>
答案 1 :(得分:0)
var value = ($(this).is(':checked')) ? 1 : 0;
答案 2 :(得分:0)
如果要以“通常”方式在查询字符串中提交复选框的值,则必须构建单个请求参数:
var dataString = $(this).attr('name') + "=" + encodeURIComponent($(this).val());
serialize()将为您计算此字符串,但如果取消选中该复选框,则返回空字符串,这显然不是您想要的。
答案 3 :(得分:0)
使用$(this).is(':checked')
代替$(this).val()
并避免返回false
,因为它会阻止实际检查复选框(除非这是您想要的行为)。