微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jQuery Uniform复选框不(取消)检查

我使用 jQuery Uniform来样式输入/选择等。但是,该复选框已停止工作。我附加从ajax调用发送的数据。一旦它加载,我使用$ .uniform.update(“input:checkBox”)来更新新的html。当尝试(取消)检查输入时,它只工作一次。如果我想(不再)检查它,它不会改变。

我试图改变Uniform Javascript,使所有的动作(即点击,焦点,模糊等)在.live函数下。 (即.live(“click”,)。这只是阻止了工作。

更新:

我完全阅读了Uniform JS,发现了一个问题:

if(!$(elem).attr("checked")){
    //Box was just unchecked,uncheck span
    spanTag.removeClass(options.checkedClass);
}else{
    //Box was just checked,check span.
    spanTag.addClass(options.checkedClass);
}

.attr(“checked”)语法失败。它总是返回false。为什么?我不知道。除此之外,它不会更新原始输入以删除checked属性或设置checked属性

我已经通过官方网站,发现它不更新复选框输入。所以这不只是我的xP

我已经google了一下,发现了各种方法来检查复选框是否被选中,但以下方法失败:

if ($(elem).attr("checked")) // The original.
if ($(elem).attr("checked") == true)
if ($(elem).is(":checked"))
if ($(elem).checked)
// and:
var check = $(elem).match(/checked=/);
if (check == null)

非常感谢的指导的语句:3

解决方法

简单解决方

这是因为如果您需要动态更改表单上的值,UniformJs需要更新对统一元素的修改

$('#checkBox').prop('checked',true);
$.uniform.update();

编辑

如果您只想更新#checkBox

$('#checkBox').prop('checked',true);
$.uniform.update('#checkBox');

原文地址:https://www.jb51.cc/jquery/184026.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐