Bla*_*ugh 4 javascript css jquery parsley.js
我有以下自定义验证器.预期目的是根据作为"要求"传递的字段的值来验证字段.
'requirement'字段更新FieldToBeValidated的更改.为了防止FieldToBeValidated一直无效,keyup将被关闭.
更改"要求"字段后,在提交表单之前不会验证FieldToBeValidated.因此,该区域保持红色,并且欧芹适用警告框.
在'requirement'字段更新为非null或'----'后,如何将'FieldToBeValidated'更改回有效状态(删除红色背景)?
name: 'customvalidatorname',
fn: function(value, requirement) {
var nodeList = document.getElementsByName(requirement);
var nodeArray = [].slice.call(nodeList);
$('#FieldToBeValidated').off('keyup');
if(!nodeArray[0].value || nodeArray[0].value === '----'){
return false;
}
return true;
},
Run Code Online (Sandbox Code Playgroud)
有两种方法可用于从特定字段远程验证.查看官方文档(参见方法部分).
要么reset()在特定字段中使用:
$(document).ready(function() {
$("form").parsley();
$("#reset-validation").on('click', function() {
$("input[name=field1]").parsley().reset();
});
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/parsley.js/2.0.7/parsley.min.js"></script>
<form>
<input type="text" name="field1" required />
<input type="submit" />
<button id="reset-validation" type="button">Reset validation</button>
</form>Run Code Online (Sandbox Code Playgroud)
或者您可以使用以下destroy()方法:
$(document).ready(function() {
$("form").parsley();
$("#reset-validation").on('click', function() {
$("input[name=field1]").parsley().destroy();
$("input[name=field1]").parsley();
});
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/parsley.js/2.0.7/parsley.min.js"></script>
<form>
<input type="text" name="field1" required />
<input type="submit" />
<button id="reset-validation" type="button">Reset validation</button>
</form>Run Code Online (Sandbox Code Playgroud)