我有一段jQuery代码,用于检查是否未选中复选框。如果没有,它会抛出一个事件。这是:
$('#Button').click(function() {
if(!$('input[@name=\"image_id\"]:checked').val()){
//Do Something
return false;
}
});
效果很好,但我决定使用jQuery Checkbox插件设置默认复选框样式。
现在是问题所在,这就是造型后的输出:
<input type="radio" name="answer_id" value="37" style="position: absolute; z-index: -1; visibility: hidden;">`
<span class="jquery-safari-checkbox jquery-safari-checkbox-checked"><span class="mark"><img src="empty.png"></span></span>
因此让我无法查看输入是否被检查。关于我能做什么(如果有的话)的任何想法,或者我只是回到旧的复选框?
答案 0 :(得分:1)
在我看来有点麻烦这样做,但是:
if($(".jquery-safari-checkbox").hasClass("jquery-safari-checkbox-checked")){
//Do something
return false;
}
答案 1 :(得分:1)
你不需要做任何特别的事情。原始复选框仍然存在并保持其状态。单击花式复选框时,插件会更新隐藏的复选框以匹配当前状态。
如果您使用最新的jQuery,也可以稍微更新您的代码。你的代码很陈旧:
$('#Button').click(function () {
if (!$('input[name=image_id]').prop('checked')) {
//Do something
return false;
}
});