Buttonコントロールにjsスクリプト検証を追加する方法


たくさんasp.Net開発の初心者は、まずvsが提供するサーバコントロールで開発することを選択するかもしれません.私もそうです.サーバコントロールは、コールバックを待ってからユーザー入力の正当性を検証する場合、サーバリソースを消費するなど、クライアントが入力したデータが空になるなど、多くの欠点があります.一般的にクライアントjs検証、サーバ側再検証です.では、サーバが生成したコミットボタンは、js検証の機能をどのように実現するのでしょうか.
答えはButtonボタンにonclientclick属性を設定することであり、一般的には以下のように設定すればonclientclick=「return IsCheck();」になります.そしてページ内でIsCheck()という判定関数を実現する.
次のようになります.
<script type="text/javascript">
    function IsCheck() {

        var isCheck = true;
        var obj = document.getElementById('FileUpload1');
        if (obj.value != '') {
            var stuff = obj.value.match(/^(.*)(\.)(.{1,8})$/)[3]; //           :)
            if (stuff != 'rar' && stuff != 'zip') {
                alert('       ,   .rar .zip  ');
                return false;
            }
        }

        return isCheck;
    }
</script>

以上のコードは、FileUploadがアップロードできるファイルのタイプを判定し、zipまたはrarファイルでない場合は、プロンプトをポップアップし、サーバへのデータ送信を停止します.
RequiredFieldValidatorなどのサーバ側検証コントロールを同時に使用する場合は、jsでPage_を判断できます.ClientValidate()の真偽、Page_ClientValidate()はfalse、IsCheck()はfalseを返します.