PHP JQuery Checkbox - 如果复选框被预先选中,它不会在未选中时删除“选中”属性

Posted

技术标签:

【中文标题】PHP JQuery Checkbox - 如果复选框被预先选中,它不会在未选中时删除“选中”属性【英文标题】:PHP JQuery Checkbox - If checkbox is pre-checked, it wont remove 'checked' attribute when unchecked 【发布时间】:2011-11-30 07:33:24 【问题描述】:

预先检查的复选框有问题(从 mysql 获取记录时)。 所以我正在尝试为用户创建一种方法来编辑数据库中的记录。表单上的一项是复选框。我检查正在编辑的记录是否具有此功能,如果有,我选中该框。当我尝试取消选中它,然后使用 jquery/ajax 提交表单并更新时,它仍然看到该框已选中。使用萤火虫,我注意到当我取消选中并选中该框时,它永远不会删除属性checked='checked'。有什么想法吗??

这里是复选框代码

<input type="checkbox" id="account_ad_city" value="1" <?php if($row['hascityad']==1)echo "checked=\"checked\"";?>>

传递给mysql更新页面前复选框的JQuery/AJAX值设置:

if($('#account_ad_city').attr('checked'))
    var ad_city = $('#account_ad_city').val();

【问题讨论】:

【参考方案1】:

使用

$('#account_ad_city').prop('checked'));

在这里试试 - http://jsfiddle.net/FloydPink/mvdzS/

而this answer here on SO itself很好地解释了.attr().prop()之间的区别

【讨论】:

以上是关于PHP JQuery Checkbox - 如果复选框被预先选中,它不会在未选中时删除“选中”属性的主要内容,如果未能解决你的问题,请参考以下文章

JS在页面限制checkbox最大复选数

完美解决ListView和CheckBox焦点冲突及复用时CheckBox错位等一系列问题

完美解决ListView和CheckBox焦点冲突及复用时CheckBox错位等一系列问题

如果 php 和 jQuery 选中或未选中,则在 php 中动态创建复选框值

jQuery js实现checkbox复选框全选全不选反选 PHP

checkbox:全选全不选单选(慕课网题目)