【问题标题】:using jquery to validate forms in django使用 jquery 在 django 中验证表单
【发布时间】:2012-07-11 02:24:43
【问题描述】:

我有以下代码来使用 jquery 验证表单我不知道为什么它不起作用?

jQuery(function(){
    jQuery("#task_name").validate({
        expression: "if(VAL) return true; else return false;", message: "please enter task name" 
    });
    jQuery("#task_city").validate({
        expression: "if ( VAL) return true; else return false;", message: "please enter task  city"
    });
    jQuery("#task_address").validate({
        expression: "if (VAL) return true; else return false;", message: "please enter task   address"
    });
    jQuery("#task_desc" ).validate({
        expression: "if (VAL) return true; else return false;", message: "please enter task   desc"
    });
    jQuery("#task_price").validate({
        expression: "if (VAL) return true; else return false;", message: "please enter task  price"
    }); 
});

【问题讨论】:

    标签: javascript jquery ajax django django-templates


    【解决方案1】:

    根据jQuery Validation plugin documentation,您必须使用messages 而不是message

    该插件也适用于整个表单,一次不是一个表单字段,请仔细阅读文档。

    根据文档,这样的东西应该适合你:

    jQuery(function(){
        /* You do not need to use jQuery instead of $ inside of a jQuery declared function */
        $("#form_id").validate({
            rules: {
                /* #task_name name */
                name1: "required",
                /* #task_city name */
                name2: "required",
                /* #task_address name */
                name3: "required",
                /* #task_desc name */
                name4: "required",
                /* #task_price name */
                name5: "required"
            },
            messages: {
               name1: "please enter task name",
               name2: "please enter task city",
               name3: "please enter task address",
               name4: "please enter task desc",
               name5: "please enter task price",
           }
        });
    });​
    

    【讨论】:

      【解决方案2】:

      除了您可能添加到表单中的任何前缀之外,Django 还会为表单字段添加前缀“id_”,以防止具有相同字段的表单类之间的命名冲突。我敢打赌,您只是错误地按 ID 引用字段。使用 Firebug 或类似的检查实用程序检查渲染模板的 DOM,并确保您通过正确的 ID 引用字段。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-06-14
        • 1970-01-01
        • 1970-01-01
        • 2017-07-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多