ASP.net Webアプリケーションに取り組んでいます。
送信ボタン付きのフォームがあります。送信ボタンのコードはのようになります<input type='submit' value='submit request' onclick='btnClick();'>
。
私は次のようなものを書きたいです:
function btnClick() {
if (!validData())
cancelFormSubmission();
}
どうすればよいですか?
ASP.net Webアプリケーションに取り組んでいます。
送信ボタン付きのフォームがあります。送信ボタンのコードはのようになります<input type='submit' value='submit request' onclick='btnClick();'>
。
私は次のようなものを書きたいです:
function btnClick() {
if (!validData())
cancelFormSubmission();
}
どうすればよいですか?
回答:
あなたはやっておく方が良いです...
<form onsubmit="return isValidForm()" />
がisValidForm()
返された場合false
、フォームは送信されません。
また、イベントハンドラーをインラインから移動する必要があります。
document.getElementById('my-form').onsubmit = function() {
return isValidForm();
};
onsubmit
私はASP.netを使用していたときに仕事に理由asp.netラップそれ自身の形...でEVERYTHING
onsubmit
asp.netでは動作しない場合があります。
とても簡単な方法で解決しました。
そのような形があれば
<form method="post" name="setting-form" >
<input type="text" id="UserName" name="UserName" value=""
placeholder="user name" >
<input type="password" id="Password" name="password" value="" placeholder="password" >
<div id="remember" class="checkbox">
<label>remember me</label>
<asp:CheckBox ID="RememberMe" runat="server" />
</div>
<input type="submit" value="login" id="login-btn"/>
</form>
これで、フォームポストバックの前にそのイベントを取得してキャッチし、ポストバックを停止して、このjqueryを使用して必要なすべてのajaxを実行できます。
$(document).ready(function () {
$("#login-btn").click(function (event) {
event.preventDefault();
alert("do what ever you want");
});
});
送信ボタンを通常のボタンに変更し、クリックテストで、検証テストに合格したフォームを送信してみませんか?
例えば
<input type='button' value='submit request' onclick='btnClick();'>
function btnClick() {
if (validData())
document.myform.submit();
}
あなたが必要onSubmit
です。それonClick
以外の場合は、Enterキーを押すだけで検証がバイパスされます。キャンセルも。falseを返す必要があります。これがコードです:
<form onSubmit="return btnClick()">
<input type='submit' value='submit request'>
function btnClick() {
if (!validData()) return false;
}
編集 onSubmitはformタグに属しています。
function btnClick() {
return validData();
}
ev.preventDefault()
またはev.returnValue = false
を使用して、デフォルトの動作をキャンセルしますが、イベントのバブリングを防ぎません。return false
イベントのバブリングを停止し、デフォルトのアクションをキャンセルする場合にのみ使用してください。この記事を参照してください。
<input type='button' onclick='buttonClick()' />
<script>
function buttonClick(){
//Validate Here
document.getElementsByTagName('form')[0].submit();
}
</script>
submit
入力があります。このページでサーバー側のコントロールを使用してみます。