我有與它驗證一個隱藏字段如下客戶端驗證未在asp.net MVC工作隱藏字段3
@Html.HiddenFor(m => m.Rating)
@Html.ValidationMessageFor(m => m.Rating)
的Rating
屬性已Range
validator屬性施加範圍爲1- 5。這是放在一個提交按鈕的形式。
我有那麼有以下jQuery的,設置在一些用戶事件中的隱藏字段中的值(上一些明星基本上用戶點擊率)
$(".star").click(function(){
$("#Rating").val(2);
});
現在,如果我提交表單而沒有設置用戶事件隱藏的領域,驗證工作。錯誤消息顯示正確,並且它適用於所有客戶端。
現在,在這種情況下,如果我點擊星星,調用上述javascript設置隱藏字段,那麼驗證錯誤消息就不會消失。我可以在隱藏變量具有一些有效值後提交表單。但我期望客戶端驗證應該可以工作。 (當隱藏變量已經設置了一些有效的值,驗證錯誤應該消失)
最初我想,jQuery的驗證將在一些特殊事件中被調用,所以我嘗試提高點擊,更改,鍵盤,模糊和我自己的聚焦事件如下
$(".star").click(function(){
$("#Rating").val(2);
$("#Rating").change();
});
但是這仍然不起作用。錯誤信息一旦出現,根本不會消失。
我不認爲你需要form以上聲明。 –
爲了讓表單上的錯誤消息得到更新,'form()'是必需的。由於問題是關於即時更新錯誤消息,因此需要。 – counsellorben
@counsellorben工作就像一個魅力 – Suhas