【发布时间】:2019-10-27 14:08:36
【问题描述】:
我有一个名为 self.Employees 的 KO 数组,它有一个显示在屏幕上的用户名列表。用户可以向系统输入新用户,如果名称已经在数组中,我想抛出一个错误。如果文本框为空白,我可以抛出错误,但是我似乎无法正确进行搜索。下面是我试过的代码。
var employeeList = [
new Employee(1, "Jack Johnson"),
new Employee(2, "Alice Smith"),
new Employee(3, "Clark Kent"),
new Employee(4, "Bruce Banner"),
new Employee(5, "Alan Moore")
];
self.Employees = ko.observableArray(employeeList) //需求!
var match = ko.utils.arrayFirst(self.Employees, function(item)
{
return item.employeeName == employee.Name;
});
if(match === employee.Name) {
self.error("Duplicate entry.");
return;
}
// Check if a field is blank before adding to array THIS WORKS
if(employee.Name == "") {
self.error("A new employee name is required.");
return;
}
else {
self.error("");
}
【问题讨论】:
标签: javascript arrays knockout.js