无法获取要使用jQuery验证程序验证的动态输入?

时间:2018-12-11 07:36:01

标签: javascript jquery jquery-validate

我已经阅读了有关此问题的大部分问题,但直到现在仍无法解决,现在有两天了,我有此表格

<form id="mr_project_form" class="post" role="form">
    <label class="fre-field-title" for="fre-project-title">Your project title</label>
    <input class="input-item text-field" id="fre-project-title" type="text" name="post_title" placeholder="Add more than 15 characters"/>
    <!--Submit button-->
</form>

我可以在此处将验证器应用于输入元素

$( "#mr_project_form" ).validate();

然后,在AJAX调用由AJAX响应注入的输入后,形式将如下所示

<form id="mr_project_form" class="post" role="form">
    <label class="fre-field-title" for="fre-project-title">Your project title</label>
    <input class="input-item text-field" id="fre-project-title" type="text" name="post_title" placeholder="Add more than 15 characters"/>

    <!--Inserted input-->
    <input class="input-item text-field" id="inserted_input" type="text" name="inserted_input"/>
    <!--Submit button-->
</form>

正如#22287410#18022224中所述,我应该在元素添加后添加规则,因此,在ajax成功中,我添加了这样的规则

$.ajax({
  url: mr_ajax_url,
  type: "POST",
  data: dataString,
  success: function (response) {
    $("#" + insertLcation).html(response);
    $('#inserted_input').rules('add', { digit: true, });
  },
});

但是无法验证,并且在页面加载时出现此错误

  

TypeError:t.validator.methods [a]未定义;无法访问其“通话”属性

     

TypeError:s未定义;无法访问其“表单”属性

1 个答案:

答案 0 :(得分:1)

它的digitss,而不是digit

$('#inserted_input').rules('add', { digits: true, });