これは可能ですか?
RegularExpressionValidator を使用して 2 つのテキスト ボックスがあり、「,」をチェックしています。カンマがない場合は、テキスト ボックスをクリアして、テキスト ボックスの横にエラー メッセージを表示します。
これが不可能な場合、入力されている値の「、」をチェックするにはどうすればよいですか?
ありがとうございました
これは可能ですか?
RegularExpressionValidator を使用して 2 つのテキスト ボックスがあり、「,」をチェックしています。カンマがない場合は、テキスト ボックスをクリアして、テキスト ボックスの横にエラー メッセージを表示します。
これが不可能な場合、入力されている値の「、」をチェックするにはどうすればよいですか?
ありがとうございました
これが解決策です:
<asp:TextBox ID="tb1" runat="server" />
<asp:RegularExpressionValidator ErrorMessage="Comma is required" ControlToValidate="tb1" runat="server" ValidationExpression=".*,.*" ForeColor="Red"/>
編集: 検証が失敗した場合、クリア テキスト ボックスの JavaScript 関数を含めます。
<asp:TextBox ID="tb1" runat="server" OnChange="tbOnChange();" />
<asp:RegularExpressionValidator ID="tbVal" ErrorMessage="Comma is required" ControlToValidate="tb1" runat="server" ValidationExpression=".*,.*" ForeColor="Red" />
<script type="text/javascript">
function tbOnChange() {
if (typeof (Page_Validators) == "undefined") return;
if (!tbVal.isvalid) {
var tb1 = document.getElementById('tb1');
tb1.value = '';
}
}
</script>
よろしく
k
私があなたの質問を正しく理解していれば、カンマの存在を確認し、検証が失敗した場合はテキスト ボックスをクリアしてください。
コンマの存在を確認するには、ValidationExpression: ". ,. "を作成します。
<asp:RegularExpressionValidator runat="server" id="valRgx" ControlToValidate="txtBox" ValidationExpression=".*,.*" ErrorMessage="Must contain a comma" />
テキスト ボックスをクリアする必要があるかどうかを確認するには、完全なポストバックを想定して、ページの prerender イベントをオーバーライドし、検証が失敗した場合はテキスト ボックスをクリアします。
すなわち
protected void Page_PreRender(object sender, EventArgs e)
{
if (!NameOfValidator.IsValid) TextBoxName.Text = string.Empty;
}
編集2:
F4 を単独で受け入れるか、バーコード パターンを受け入れるかについての質問に答えるには:
<asp:RegularExpressionValidator runat="server" id="valRgx" ControlToValidate="txtBox" ValidationExpression="(F4)|(.*,.*)" ErrorMessage="Must contain a comma" />