0
我有一些控件CustomValidators像下面。但是,SetFocusOnError不起作用,如果驗證失敗,頁面不會跳轉到第一個控件。我可以在javascript中設置焦點,但問題在於總是無效的最後一個控件獲取焦點,這不是我想要的,我希望第一個無效的控件獲得焦點。CustomValidator SetFocusOnError不起作用
誰能告訴我如何解決這個問題?謝謝。
function ValidateRootCause(source, args) {
var status = document.getElementById("<%=statusDropDownList.ClientID %>");
var RootCause = document.getElementById("<%=txtRootCause.ClientID %>");
args.IsValid = true;
if (RootCause.value == "" && (status.value == 21 || status.value == 18)) {
args.IsValid = false;
RootCause.focus();
}
}
<tr>
<td width="45%">Root Cause (Why it Happens)<span class="littlefont">*</span>
<asp:CustomValidator ID="cvRootCause" runat="server"
ErrorMessage="Required Field!" CssClass="warning"
ClientValidationFunction="ValidateRootCause" ValidationGroup="formValidation" SetFocusOnError="True">
</asp:CustomValidator>
</td>
<td width="55%">
<asp:TextBox ID="txtRootCause" runat="server" TextMode="MultiLine"
MaxLength="1000"></asp:TextBox>
</td>
</tr>
這是一個非常好的主意和工作。謝謝。我需要添加的另一件事是在點擊Submit按鈕時將focusGive設置爲false。 – GLP