当我提交表单时,我想启动下面编写的 Javascript
方法。这个 JS 方法将向后端发送 POST 请求。但是,在下面编写的代码中,这个 JS
方法没有被触发。有人可以帮我解决这个问题吗?
@using (Html.BeginForm(null, null, FormMethod.Post, new { @class = "form-horizontal", onsubmit = "submitdata" }))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary()
<div class="form-group">
@Html.LabelFor(m => m.EMAIL, new { @class = "col-md-2 control-label" })
<div class="col-md-10">
@Html.TextBoxFor(m => m.email, new {id ="Email", @class = "form-control" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(m => m.pwd, new { @class = "col-md-2 control-label" })
<div class="col-md-10">
@Html.PasswordFor(m => m.pwd, new {id="pwd", @class = "form-control" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(m => m.ConfirmPassword, new { @class = "col-md-2 control-label" })
<div class="col-md-10">
@Html.PasswordFor(m => m.ConfirmPassword, new { @class = "form-control" })
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input type="submit" class="btn btn-default" value="Register" onsubmit="submitdata"/>
</div>
</div>
}
Javascript
function submitdata() {
var pwd = document.getElementById("pwd");
var email = document.getElementById("email");
$.ajax({
type: 'post',
url: '/Account/Reg',
data: {
email: email,
password: pwd
},
success: function (response) {
$('#success__para').html("You data will be saved");
}
});
return false;
}
最佳答案
你的 onsubmit 属性中漏掉了 () ;
onsubmit = "submitdata()"
关于javascript - 从 Razor 表单提交中调用 JS 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41207215/