Jquery 未捕获类型错误-checkboxradio(“刷新”)

Jquery 未捕获类型错误-checkboxradio(“刷新”),jquery,asp.net,jquery-mobile,webforms,Jquery,Asp.net,Jquery Mobile,Webforms,我能想到的每一种方法都是使用(“#chkBox1”).prop(“选中”,true)导致错误。在Chrome中,我得到未捕获类型错误:未定义不是一个函数。我在jQuery之后、JQM之前和DateBox之前将此脚本加载到外部文件中。我使用ASP.NET Web表单。我禁用了许多验证控件的客户端验证,这有助于解决另一个问题 我回顾了可能的解决方案,包括确保jQuery没有问题。我正在使用网站上的文档。我有一个工作的JSFIDLE,但我似乎无法让checkboxradio小部件在web表单中工作。有

我能想到的每一种方法都是使用
(“#chkBox1”).prop(“选中”,true)导致错误。在Chrome中,我得到
未捕获类型错误:未定义不是一个函数
。我在jQuery之后、JQM之前和DateBox之前将此脚本加载到外部文件中。我使用ASP.NET Web表单。我禁用了许多验证控件的客户端验证,这有助于解决另一个问题

我回顾了可能的解决方案,包括确保jQuery没有问题。我正在使用网站上的文档。我有一个工作的JSFIDLE,但我似乎无法让checkboxradio小部件在web表单中工作。有没有办法修复此错误?知道是什么导致了这个错误吗

----编辑----


在删除客户端JavaScript代码后,我在刷新部分仍然会出现错误,但只执行了几个步骤。此外,如果我刷新页面,复选框将被选中,但不会再次选中。有没有一种方法可以使用JQM可靠地动态更改复选框的选中状态?

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

问题的根源一定是ASP.NET Web窗体的帮助太大了。验证控件注入大量干扰自定义脚本的JavaScript,特别是干扰这个checkboxradio小部件的代码

我怀疑许多奇怪的jQuery和JQM问题可以通过禁用Web表单默认强加给我们的这种“帮助”来解决

--编辑--


后来出现了问题,但使用“pagecontainershow”修复了问题,因为事件chkBox1
真的是客户端上的ID吗?您确定它不会以类似于
chkBox1
的方式结束吗?在我的ASP.NET应用程序中使用jQuery和jQuery Mobile没有什么问题。您发布的解决方案似乎是基于对Web窗体工作原理的错误理解。您可能在创建复选框之前调用了刷新函数。@mason我确信ID没有更改,因为它是纯HTML+JavaScript。@Omar我正在使用“pagechange”事件。我应该做些不同的事情吗?@Omar谢谢你的帮助。使用类而不是ID创造了奇迹。奇怪的是,在查看源代码时,只有一个元素具有该ID。
$(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");
        }
    }        
});