我在 mvc razor 中有一个表单,它有两个文本框和一个用于保存电子邮件的按钮。当我在浏览器中使用带有 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 未定义'或'返回 SaveEmailForNewsletter() 未定义'
当我在浏览器中使用带有“type = button”和onclick事件的输入时,通过单击“发送按钮”它不会检查空文本框并且不会显示任何错误。当我看到萤火虫的控制台时,它只是张贴没有任何东西。
<input type="button" id="submitBtn" value="send"
onclick="SaveEmailForNewsletter();" class="ButtonStyle"/>
function SaveEmailForNewsletter() {
//Code above
});
我想检查文本框,如果它们为空,则显示模型状态验证错误,然后转到我的函数,执行并显示警报。我应该怎么办?谢谢..