gpt4 book ai didi

javascript - 如何隐藏验证消息

转载 作者:行者123 更新时间:2023-11-28 02:37:05 28 4
gpt4 key购买 nike

我正在使用knockout.js 和knockout.validation 插件。我有一个搜索表单,其中包含 3 个输入字段:名称、日期和国家/地区。我想确保用户在继续搜索之前必须至少填写 1 个字段。因此,我在所有 3 个字段上应用了 native 验证规则 required。这是我的代码:

function SearchModel() {
var self = this;

self.Name = ko.observable().extend({ required: true });
self.Date = ko.observable().extend({ required: true });
self.Country = ko.observable().extend({ required: true });
self.Errors = ko.validation.group(self);
}

我还创建了一个 Errors 属性,其中包含验证失败时的所有验证消息。现在,当用户提交搜索表单并且如果验证失败时,我不想在输入字段下方显示所有错误消息,而是想在表单顶部显示一条消息,例如 “您必须输入至少一个搜索过滤器”

所以我的问题是如何隐藏所有消息并在表单顶部显示一条消息?或者,如果有其他更好的方法可以完成我正在尝试做的事情,请告诉我?

最佳答案

不要将每个字段设置为必填,而是使用条件来确定是否已提供一个属性。

function SearchModel() {
   var self = this;

   self.Name = ko.observable();
   self.Date = ko.observable();
   self.Country = ko.observable();
   self.Errors = ko.validation.group(self);
   self.needsMore = ko.computed(function () {
     return !(self.Name() ||
       self.Date() ||
       self.Country);
   });
}

关于javascript - 如何隐藏验证消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13320388/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com