0

正規表現を使用して、フォーカスアウト時にJavaScriptでいくつかの.netテキストボックスを検証しています:

ValidationExpression="[0-9]+(\.[0-9][0-9]?)?" 

すべてのテキスト ボックス。

isValidate の場合、ボタンを有効にする = true でなければ、ボタンを有効にする = false

しかし、私のコードは機能しません:

<dx:ASPxTextBox ID="tbxAcPart" runat="server" Width="95px" ClientIDMode="Static">
    <ClientSideEvents Validation="function(s, e) {ValidTextBox(s);}" />
    <ValidationSettings ErrorDisplayMode="Text" EnableCustomValidation="true"  SetFocusOnError="true" ValidationGroup="Apply" Display="Dynamic" ErrorTextPosition="Bottom" >
     <ErrorFrameStyle Font-Size="Smaller"/>
     <RegularExpression ValidationExpression="[0-9]+(\.[0-9][0-9]?)?" ErrorText="Numeric   !" /> 
     <RequiredField IsRequired="true" />
    </ValidationSettings>
</dx:ASPxTextBox>


<dx:ASPxTextBox ID="tbxMpPart" runat="server" Width="95px" ClientIDMode="Static">
    <ClientSideEvents Validation="function(s, e) {ValidTextBox(s);}" />
    <ValidationSettings ErrorDisplayMode="Text" EnableCustomValidation="true"  SetFocusOnError="true" ValidationGroup="Apply" Display="Dynamic" ErrorTextPosition="Bottom" >
         <ErrorFrameStyle Font-Size="Smaller"/>
         <RegularExpression ValidationExpression="[0-9]+(\.[0-9][0-9]?)?" ErrorText="Numeric   !" /> 
         <RequiredField IsRequired="true" />
    </ValidationSettings>
</dx:ASPxTextBox>
function ValidTextBox(s) {
    if (s.GetIsValid()) {
        decimalErr.SetText('');
    }
    else {
        decimalErr.SetText(s.GetErrorText());
        var t = document.getElementsById("btApply");
        t.disabled = true;
        this.focus();
    }
}
4

1 に答える 1