0

私のaspxページで:

...
<tr>
<asp:Label ID="FailureText" runat="server" ForeColor="#CC3300"></asp:Label>
<asp:ValidationSummary ID="Alert" runat="server" CssClass="failureNotification" HeaderText=""/>
<tr/>
<tr>
<FTB:FreeTextBox id="FTB" runat="server" />
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="FTB" 
CssClass="failureNotification" ErrorMessage="Content cannot be empty." ToolTip="Content cannot be empty." ></asp:RequiredFieldValidator>
<tr/>

初めて、FTB を空にすると、コードは正常に動作します --> FailureText=" Content cannot be empty.";

space2回目は、FTBに多く入力するために押しましたspaces-> FailureTextは表示されず、プログラムは次のコードを実行します。

以前にコントロールを使用RequiredFieldValidatorしたことがありますが、null またはスペース値の両方で正常に機能しました。

ヘルプ!RequiredFieldValidatorここでスペースの値を受け入れる理由が本当にわかりませんか???

4

1 に答える 1

1

多分これが役立つでしょう。まったく同じではありませんが、スペースのみが入力されているかどうかを確認する必要があるようです。

テキストボックスの検証 (スペースなし)

<asp:RegularExpressionValidator ID="rev" runat="server" ControlToValidate="txtBox"
    ErrorMessage="Spaces are not allowed!" ValidationExpression="[^\s]+" />
<asp:RequiredFieldValidator ID="rfv" runat="server" ControlToValidate="txtBox" 
    ErrorMessage="Value can't be empty" />

編集...

サーバー側で何らかの作業を行うことに問題がなければ、これはより簡単な解決策になります...

if(string.IsNullOrWhiteSpace(Textbox1.Text))
{
      lblError.Text ="Enter required field";
}
于 2013-11-14T17:14:17.177 に答える