我有一个单选按钮和一个下拉列表。
下拉列表是" AM,PM,N \ A"
如果用户勾选单选按钮,则表示半天,因此应选择AM或PM
如果没有勾选单选按钮,那么他们应该选择N \ A(我知道这也可以通过jquery改变但暂时忽略它);
我在模型中对每个模型进行了两次远程验证,将另一个作为附加字段传递。
[Remote("IsHalfDayChange", "Remote", AdditionalFields = "AmPm", HttpMethod = "POST", ErrorMessage = "{0}")]
public bool IsHalfDay { get; set; }
[Remote("AmPmChange", "Remote", AdditionalFields = "IsHalfDay", HttpMethod = "POST", ErrorMessage = "{0}")]
public int AmPm { get; set; }
默认情况下,单选按钮是未选中的(全天),下拉菜单设置为N \ A.
如果用户勾选单选按钮,则远程验证会在下拉列表中正确看到错误的值并显示错误。
如果用户将下拉菜单更改为上午或下午,单选按钮的错误仍然存在,因为它没有被重新评估。
当单选按钮或下拉列表更改时,如何使用jquery重新评估远程错误?
答案 0 :(得分:0)
为了节省性能,除了你想要在所有
下显示错误之外,你可以只评估一个而不是两个。<script type="text/javascript" name="remoteVal_V1">
$(document).ready(function () {
$("#amPmDropDownSelect").change(function () {
//$("#isHalfDayCheckBox").removeData("previousValue").valid();
$("#amPmDropDownSelect").removeData("previousValue").valid();
});
$("#isHalfDayCheckBox").change(function () {
//$("#isHalfDayCheckBox").removeData("previousValue").valid();
$("#amPmDropDownSelect").removeData("previousValue").valid();
});
});
</script>