Javascript 如何知道淘汰验证中哪个字段无效?
我有一个相当大的淘汰模型,我想验证其中的所有嵌套模型:Javascript 如何知道淘汰验证中哪个字段无效?,javascript,knockout.js,knockout-validation,Javascript,Knockout.js,Knockout Validation,我有一个相当大的淘汰模型,我想验证其中的所有嵌套模型: self.errors = ko.validation.group(self, { deep: true }); 验证程序发现一个错误: > self.errors() ["This field is required."] 我不知道我的巨型模型的哪个字段是无效的。我怎么才能找到呢?我想你应该找这样的东西 // Getting errors var errors = ko.validation.group(this, {
self.errors = ko.validation.group(self, { deep: true });
验证程序发现一个错误:
> self.errors()
["This field is required."]
我不知道我的巨型模型的哪个字段是无效的。我怎么才能找到呢?我想你应该找这样的东西
// Getting errors
var errors = ko.validation.group(this, {
deep: true,
observable: false
});
// New method: getting extended details
var details = errors.getDetails();
for (var i = 0; i < details.length; i++) {
var d = details[i];
/*
Every element contains the following fields:
"observable" - a reference to the target observable.
"error" - the error message.
"rule" - the name of the failed validation rule.
"data" - an object that contains extension data (provided via "extend" method) for every rule. E.g. "data.required == true".
*/
}
//获取错误
var errors=ko.validation.group(此{
深:是的,
可观察的:假
});
//新方法:获取扩展细节
var details=errors.getDetails();
对于(变量i=0;i
PS:您需要在验证文件中添加几行,以使getDetails()
工作,即验证脚本文件中可能没有这些内容。(检查参考链接和检查代码)
沃尔帕夫的推荐信和信用证很早以前就帮了我的忙
以防万一,如果有人正在寻找工作样本,请检查,谢谢您的建议。我尝试使用volpav版本的文件使用getDetails,但我有一个错误“validatables未定义”。您在这个链接中复制了完整的js代码吗?是的,但我还有其他一些错误。我已经用context.validatables而不是validatables()解决了之前js错误的问题。details对象的信息只通过说出另一个无效字段的规则来帮助我。但我怎么能发现它更简单呢?你能给我设置一个我提到的文件和你的虚拟机的例子,我可以研究它。Cheers我通过可观察引用设置了一个很长的字符串,找到了无效字段,我在页面上看到了它。感谢帮助=)可能重复: