未捕获的TypeError - checkboxradio(“刷新”)

时间:2014-06-17 19:26:08

标签: jquery asp.net jquery-mobile webforms

我能想到使用("#chkBox1").prop("checked", true).checkboxradio("refresh");的每一种方式都会导致错误。在Chrome中,我得到Uncaught TypeError: undefined is not a function。我在jQuery之后和JQM之前将这个脚本加载到外部文件中,& DateBox。我使用ASP.NET Web窗体。我禁用了许多验证控件的客户端验证,这有助于解决另一个问题。

我查看了可能的解决方案,包括确保jQuery only one reference。我正在使用jQuery's网站上的文档。我有一个工作的JSFiddle example,但我似乎无法让checkboxradio小部件在Web表单中工作。有没有办法解决这个错误?知道是什么导致了这个错误吗?

----编辑----

$(document).on("pagecreate", function () {

    if ($("#chkBox1:checked")) {
        sessionStorage.isHBH = true;
    } else {
        sessionStorage.isHBH = true;
    }

    if ($("#chkBox1").length) {
        if (sessionStorage.isHBH) {
            $("#chkBox1").prop("checked", true).checkboxradio("refresh");
        } else {
            $("#chkBox1").prop("checked", false).checkboxradio("refresh");
        }
    }        
});

在删除客户端JavaScript代码后,我仍然在刷新部分上出现错误,但只有几步进入该过程。此外,如果我刷新页面,则会选中该复选框,但不会再次选中。有没有办法使用JQM可靠地动态更改复选框的已检查状态?

1 个答案:

答案 0 :(得分:0)

当我测试禁用每个验证控件的客户端脚本功能时,我正在为这个问题编写一个问题。这立刻解决了我的问题。

问题的根源必须是ASP.NET Web Forms太有用了一半。验证控件注入了许多干扰自定义脚本的JavaScript,特别是干扰了此复选框的小部件代码。

我怀疑许多奇怪的jQuery和JQM问题可以通过禁用Web窗体默认对我们施加的这种“帮助”来解决。

- 编辑 -

后面出现了问题,但是使用“pagecontainershow”作为事件修复了