【问题标题】:Issue with jQuery validate : TypeError: t.data(...) is undefinedjQuery validate 问题:TypeError: t.data(...) is undefined
【发布时间】:2013-05-31 15:30:13
【问题描述】:

我目前正在运行以下 jQuery 插件来验证我们系统中的所有表单。

http://jqueryvalidation.org/

由于我们的 html 依赖于 css 类,我使用以下代码将规则应用于所有具有 .required 类的字段:

$('form').each(function(){
    $(this).validate();
    $('.required').each(function(){
        $(this).rules('add',{
            required: true,
            messages: {
                required: "This field is required"
            }
        });
    });
});

但是,在 Firefox 中尝试此操作时,Firebug 给了我以下错误:

       TypeError: t.data(...) is undefined

这是插件本身而不是我的代码,尽管我相信当我的代码调用这个插件时,插件无法处理它需要执行的方式。有没有其他人遇到过这个错误?

我的表单目前混合了文本字段、下拉菜单和单选按钮,所有这些都具有相同的 .required 类。不幸的是,我无法更改 HTML,因为它是动态的并且内置在我们的底层系统中(因此它是使用 PL/SQL 过程生成的)。

很遗憾,我无法发布相关表单的链接,因为我们的系统会要求您登录,但是如果上面的代码不足以继续,我可以尝试复制它。

任何帮助将不胜感激。

亲切的问候,

杰森·埃斯平

编辑:

如果有帮助,插件代码是从这里热链接的,我没有对其进行任何修改:

   <script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.min.js"></script>
   <script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/additional-methods.min.js"></script>

【问题讨论】:

    标签: jquery validation jquery-validate


    【解决方案1】:

    您的每个函数都是多余的,就好像该字段具有“必需”类一样,它将作为类规则应用所需的方法,并且默认消息是“此字段是必需的”

    $('form').each(function(){
        $(this).validate();
        //$('.required').each(function(){
        //    $(this).rules('add',{
        //        required: true,
        //        messages: {
        //            required: "This field is required"
        //        }
        //    });
        //});
    });
    

    您可以通过在浏览器控制台中运行以下命令来验证“必填”规则是否仍应用于您的字段:

    $('#fieldtotest').rules();
    

    【讨论】:

    • 太好了,谢谢。如果它在插件的网站上指定,那就太好了。
    【解决方案2】:
    $(document).ready(function () {
        $('#mytable').dataTable({
            "processing": true,
            "serverSide": true,
            "ajax": "jsond",
            "columns": [
                {"userList": "userId"},
                {"userList": "user_name"},
                {"userList": "age"}
            ]
        });
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-11
      • 2014-09-09
      • 1970-01-01
      相关资源
      最近更新 更多