我已经阅读了有关此问题的大部分问题,但直到现在仍无法解决,现在有两天了,我有此表格
<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未定义;无法访问其“表单”属性
答案 0 :(得分:1)
它的digits
与s
,而不是digit
。
$('#inserted_input').rules('add', { digits: true, });