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