NET MVC 使用 javascript 确认后尝试回发,这是按钮:
<input type="submit" id ="RemoveStatus" value="Remove Status" name="button" onclick="return CheckRemove();"/>
这是我的 CheckRemove() js 函数中的 javascript:
var button1 = document.getElementById("RemoveStatus");
if (confirm("Are you sure you want to remove status?") == true)
{
button1.disabled = true;
button1.value = "Removing status...";
__doPostBack('RemoveStatus', '');
return true;
}
else
{
return false;
}
但由于某种原因,我在 __doPostBack 位得到了一个对象预期错误,我已经清楚地设置了 id,button1 在调试中也被填充了,我尝试将 button1.id 和 button1 也传递到 __doPostBack 调用中,但是它不会回发并一直说需要对象,有什么想法吗?
最佳答案
您在 MVC 中没有像在 webforms 中那样的回发概念。只需使用 nameoftheform.submit();
即可。
http://www.javascript-coder.com/javascript-form/javascript-form-submit.phtml
您可以使用以下方法在表单标签中生成 id:
<% using (Html.BeginForm("Create", "Test", FormMethod.Post, new {id="myForm"})) {%>
并在脚本中使用:
document.getElementById('myForm').submit();
就我个人而言,我是 jQuery 的粉丝,因此最后一个可以重写为:
$('#myForm').submit();
关于MVC 中的 Javascript onclick _dopostback 不回发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3317131/