2つのテキストボックスとメールを保存するためのボタンがあるMVCかみそりのフォームがあります。onclickイベントで送信ボタンを使用すると、ブラウザでクリックすると、メールのテキストボックスが空かどうかがチェックされ、MVCモデルに検証エラーが表示されますが、テキストボックスに入力して送信ボタンをクリックしても表示されませんSaveEmailForNewsletter()関数に移動し、ページを更新します。
<input type="submit" id="submitBtn" value="send" onclick="javascript:SaveEmailForNewsletter();" class="ButtonStyle"/>
$("#myform").submit(
function SaveEmailForNewsletter(e) {
e.PreventDefault();
var newsLetter = { Email: $("#Email").val(),Name:$("#Name").val(), LanguageId: "1" };
$.ajax({
url: '/Newsletter/Index',
type: 'POST',
dataType: 'json',
data: JSON.stringify(newsLetter),
contentType: 'application/json; charset=utf-8',
success: function (result) {
if (result.success) {
// We have a JSON object in case of success
alert('register successfuly!');
$('#Email').val("");
$("#Name").val("");
} else {
// We have the partial with errors in case of failure
// so all we have to do is update the DOM
alert('This email registered previosly.');
$("#Email").val("");
$("#Name").val("");
}
}
});
});
onclickを次のように変更しました:
OnClick="return SaveEmailForNewsletter();"
動作しません。どちらの方法でも、このエラーが表示されます。
「javascriptが定義されていません」または「returnSaveEmailForNewsletter()が定義されていません」
ブラウザで「type=button」とonclickイベントを使用して入力を使用すると、「send button」をクリックしても、空のテキストボックスがチェックされず、エラーも表示されません。私がfirebugのコンソールを見るとき、それは何もせずにただ投稿します。
<input type="button" id="submitBtn" value="send"
onclick="SaveEmailForNewsletter();" class="ButtonStyle"/>
function SaveEmailForNewsletter() {
//Code above
});
テキストボックスをチェックしたいのですが、空の場合はモデル状態の検証エラーが表示され、関数に移動して実行し、アラートが表示されます。私は何をすべきか?ありがとう..