jQuery复选框样式问题

时间:2013-02-28 18:44:09

标签: javascript jquery input checkbox styling

我有一段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>

因此让我无法查看输入是否被检查。关于我能做什么(如果有的话)的任何想法,或者我只是回到旧的复选框?

2 个答案:

答案 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;
    }
});

演示:http://jsfiddle.net/k2d6E/