我选中了一个复选框,我想在数据库中输入复选框的值。请帮我找到这个的Ajax和php代码。 我试过这个
$(document).on('click', "input[type='checkbox']", function() {
var checkbox = $(this);
var checked = checkbox.attr('checked');
$.ajax({
url:"<?php echo base_url("contact-details-availability"); ?>",
type: 'post',
data: {
action: 'checkbox-select',
id: checkbox.attr('contact_avl'),
checked: checked
},
success: function(data) {
//alert(data);
},
error: function(data) {
// alert(data);
// Revert
checkbox.attr('checked', !checked);
}
});
});
和
public function add_contact_details_availability()
{
if($_POST['action'] == 'checkbox-select') {
$checkbox = $_POST['id'];
$checked = $_POST['checked'];
// Your MySQL code here
echo 'Updated';
}
echo 'Code ran';
}
但它不会起作用
答案 0 :(得分:2)
这是工作JQuery
bc.setVisibility(web.canGoBack()? View.VISIBLE : View.INVISIBLE);
HTML
<script>
$(document).on("change", "input[name='chk']", function () {
var checkbox = $(this);
var checked = checkbox.prop('checked');
$.ajax({
url:"<?php echo base_url("contact-details-availability"); ?>",
type: 'post',
data: {
action: 'checkbox-select',
id: checkbox.data('contact_avl'),
checked: checked
},
success: function(data) {
//alert(data);
},
error: function(data) {
// alert(data);
// Revert
checkbox.attr('checked', !checked);
}
});
});
</script>
我说它是工作因为所有三个值都在传递。 对修复所做的更改是:
1]将<input type="checkbox" name="chk" id="chk" data-contact_avl="val" value="1">check
更改为var checked = checkbox.attr('checked');
2]将var checked = checkbox.prop('checked');
更改为ID:id: checkbox.attr('contact_avl')
3]将checkbox.data('contact_avl')
更改为onclick
答案 1 :(得分:0)
试试这个:
var id = checkbox.attr('contact_avl'),
$.ajax({
url:"<?php echo base_url("contact-details-availability"); ?>",
type: 'post',
data: {
action: 'checkbox-select',
id: id,
checked: 'checked'
},
success: function(data) {
//alert(data);
},
error: function(data) {
// alert(data);
// Revert
checkbox.attr('checked', !checked);
}
});