1

ファイルのアップロード用にこれを持っていますが、次RegularExpressionValidatorの場合にのみ受け入れます.jpg:

<asp:RegularExpressionValidator ID="regexValidator" runat="server"
ControlToValidate="FileUpload1" ForeColor="red" Font-Size="Smaller"
ErrorMessage="Only JPEG images are allowed"
ValidationExpression="(.*\.([Jj][Pp][Gg])|.*\.([Jj][Pp][Ee][Gg])$)">
</asp:RegularExpressionValidator>

問題は、エラー メッセージが表示される代わりに別のファイル タイプを選択しようとするとjpg/jpeg、送信ボタンをクリックしようとすると送信されることです。

入力が完全に検証されるまで、送信ボタンを無効にして有効にすることを考えていますが、どのように機能するのかわかりませjqueryasp:RegularExpressionValidator

4

2 に答える 2

0

最も可能性の高い説明はValidationGroup、送信ボタンの が別のグループにバインドされていることです....

また、ポストバックするときは、 Page.IsValid メソッドを使用してバリデーターを再チェックすることがベスト プラクティスと見なされることに注意してください (これは、バリデーターがブラウザーでトリガーされることが保証されていないためです。たとえば、javascript がオフになっているなど... )

サンプルコード:

protected void btnSave_Click(object sender, EventArgs e)
{
    //Check that validators are valid
    if (!Page.IsValid)  
        return;

   //save image
}
于 2013-09-06T14:25:32.453 に答える
0

jQueryを使用すると、正規表現からブール値をチェックしてフォーム送信アクションを防止し、デフォルトを防止できます。

$("#form1").submit(function(){
    if(!(boolean)){
        event.preventDefault(); 
    }
}

編集:正規表現がASPから来ていることを見逃しましたが、aspを使用してフォームに属性を設定し、jQueryを使用してフォーム属性を確認できました。

于 2013-09-06T14:01:59.990 に答える