Buttonコントロールにjsスクリプト検証を追加する方法
たくさんasp.Net開発の初心者は、まずvsが提供するサーバコントロールで開発することを選択するかもしれません.私もそうです.サーバコントロールは、コールバックを待ってからユーザー入力の正当性を検証する場合、サーバリソースを消費するなど、クライアントが入力したデータが空になるなど、多くの欠点があります.一般的にクライアントjs検証、サーバ側再検証です.では、サーバが生成したコミットボタンは、js検証の機能をどのように実現するのでしょうか.
答えはButtonボタンにonclientclick属性を設定することであり、一般的には以下のように設定すればonclientclick=「return IsCheck();」になります.そしてページ内でIsCheck()という判定関数を実現する.
次のようになります.
以上のコードは、FileUploadがアップロードできるファイルのタイプを判定し、zipまたはrarファイルでない場合は、プロンプトをポップアップし、サーバへのデータ送信を停止します.
RequiredFieldValidatorなどのサーバ側検証コントロールを同時に使用する場合は、jsでPage_を判断できます.ClientValidate()の真偽、Page_ClientValidate()はfalse、IsCheck()はfalseを返します.
答えは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を返します.