如何解决是否有任何函数可以将 onClick 函数传递给控制器
我创建了一个按钮来避免生成具有相同值的双数,当一个用户点击它时我会创建一个按钮,向他和其他用户显示值正在保存过程中,这样我就可以避免出现双值。
但是当我尝试在服务器端控制器上捕获它时,它显示在 Inspect element->Network->Status 302 -> POST -> FILE (GenerateCodes)
中。
@using (Html.BeginForm("GenerateCodes","Codes",FormMethod.Post))
{
<div class="Box-header">
<div class="row">
<div class="col-md-3 text-right">
<!--disable button for about 3 second after click button-->
<button type="submit" id="ok" class="btn btn-primary btn-lg" onclick="return displayProgressMessage(this,'Saving...');">Generate</button>
<script>
function displayProgressMessage(ctl,msg) {
$(ctl).prop("disabled",true);
$(ctl).text(msg);
return true;
}
</script>
</div>
</div>
</div>
}
我的 Codes.cs 控制器。
protected void displayProgressMessage(object sender,EventArgs e)
{
//Something
Response.Write("DD");
}
解决方法
控制器中的方法名称需要为“GenerateCodes”以匹配 Html.BeginForm() 辅助方法中的操作。此外,该方法中的参数需要是 .cshtml 视图中的模型,或者如果您没有使用视图中的模型,则不需要参数。最后,您需要在控制器中的方法上使用 HttpPost 属性,以使其知道您正在向该方法发布表单。
[HttpPost]
public IActionResult GenerateCodes()
{
//Do Something
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。