C# 根据其他字段设置验证
我有一个名为ReceiveTotalAmount的字段,它显示c#model中的值 这就是函数C# 根据其他字段设置验证,c#,knockout.js,C#,Knockout.js,我有一个名为ReceiveTotalAmount的字段,它显示c#model中的值 这就是函数 ko.validation.rules['greaterThan'] = { validator: function (val, other) { if (val != null && val != "" && other != null) { var first = parseInt(val);
ko.validation.rules['greaterThan'] = {
validator: function (val, other) {
if (val != null && val != "" && other != null) {
var first = parseInt(val);
var second = parseInt(ko.unwrap(other));
if (!isNaN(first) && !isNaN(second)) {
return first > second;
}
}
return true;
},
message: 'Must be greater than or equal to the other value'
};
除了验证之外,一切都正常。如果计数器总数大于回收总数,我无法生成错误消息。。。
谢谢很多事情可能会出错,但由于您没有“发布完整的示例,只发布代码片段”,您需要检查以下事项:
ko.validation.registerExtenders()代码>在您想第一次使用它之前
.extend({})
返回扩展的observable,因此需要用结果覆盖现有属性:
self.CounteredTotalAmount = self.CounteredTotalAmount.extend({
greaterThan: {
params: self.ReclaimTotalAmount,
message: "Car number high must be greater than the low."
}
});
值
和已检查
绑定,以自动显示错误消息。因此,您需要使用validationMessage
绑定来显示错误,因为您在这里使用的是text
绑定:
<div class="container-left">
Countered Total:<span data-bind='text: CounteredTotalAmount'></span>
<span data-bind="validationMessage: CounteredTotalAmount"></span>
</div>
抵销总额:
下面是一个使用简化版代码的示例。可能会出现多个问题,但由于您没有“发布完整的示例,只发布代码片段”,因此您需要检查以下事项:
ko.validation.registerExtenders()代码>在您想第一次使用它之前
.extend({})
返回扩展的observable,因此需要用结果覆盖现有属性:
self.CounteredTotalAmount = self.CounteredTotalAmount.extend({
greaterThan: {
params: self.ReclaimTotalAmount,
message: "Car number high must be greater than the low."
}
});
值
和已检查
绑定,以自动显示错误消息。因此,您需要使用validationMessage
绑定来显示错误,因为您在这里使用的是text
绑定:
<div class="container-left">
Countered Total:<span data-bind='text: CounteredTotalAmount'></span>
<span data-bind="validationMessage: CounteredTotalAmount"></span>
</div>
抵销总额:
下面是一个使用简化版代码的示例。谢谢-现在可以使用了,我想我的主要问题是我没有ko.validation.registerExtenders();在扩展函数之后调用…谢谢-它现在可以工作了,我想我的主要问题是我没有ko.validation.registerExtenders();在扩展函数之后调用。。。
self.CounteredTotalAmount = self.CounteredTotalAmount.extend({
greaterThan: {
params: self.ReclaimTotalAmount,
message: "Car number high must be greater than the low."
}
});
<div class="container-left">
Countered Total:<span data-bind='text: CounteredTotalAmount'></span>
<span data-bind="validationMessage: CounteredTotalAmount"></span>
</div>