当检查未被选中时,我想为它设置值。但是,每次我发布我的数据,无论它是检查还是未检查,它的值将是'1‘
我尝试在!isset($check)
中设置post.php
,但值也是1。
取消选中复选框时,如何设置不同的值。
<input type="checkbox" id="check" name="check" value="1">
jquery代码如下:
var check = $('#check').val();
var Data = {check:check};
$.ajax({
type:"POST",
url:"post.php",
data:Data,
beforeSend: function() {
$("#btn-submit").html('sending');
},
success: function(data) {
}
});
发布于 2017-07-17 07:02:15
问题是,无论是否选中该元素,复选框的val()
总是相同的。
要执行所需的操作,可以根据checked
状态设置值。试试这个:
var $check = $('#check');
$.ajax({
type: "POST",
url: "post.php",
data: {
check: $check.prop('checked') ? $check.val() : 0
},
beforeSend: function() {
$("#btn-submit").html('sending');
},
success: function(data) {
// do something with the response
}
});
发布于 2017-07-17 06:58:36
应该使用is(':checked')
来确定是否选中了复选框:
$("#check").on('change', function() {
var checkFlag = 'unchecked';
if ($(this).is(':checked')) {
checkFlag = 'checked';
}
console.log(checkFlag);
$.ajax({
type: "POST",
url: "post.php",
data: {
check: checkFlag
},
beforeSend: function() {
$("#btn-submit").html('sending');
},
success: function(data) {}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" id="check" name="check" value="1">
发布于 2017-07-17 07:02:05
尝试以下操作:var check = $('#check').is(":checked");
选中复选框时,
你会得到true
未选中复选框时,
你会得到false
https://stackoverflow.com/questions/45137773
复制相似问题