Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
即使javascript验证失败,MVC4表单仍在提交_Javascript_Asp.net Mvc_Asp.net Mvc 4 - Fatal编程技术网

即使javascript验证失败,MVC4表单仍在提交

即使javascript验证失败,MVC4表单仍在提交,javascript,asp.net-mvc,asp.net-mvc-4,Javascript,Asp.net Mvc,Asp.net Mvc 4,出于某种原因,即使java脚本验证失败,我的MVC4表单仍在提交。请在我的视图中查看下面的代码。我确实看到javascript警报,但表单正在提交到服务器 @model DataAccess.Question 你知道我遗漏了什么吗 @model DataAccess.Question @model DataAccess.Question @使用(Html.BeginForm(“Index”,“Question”,new{QuestionId=Model.QuestionId}))

出于某种原因,即使java脚本验证失败,我的MVC4表单仍在提交。请在我的视图中查看下面的代码。我确实看到javascript警报,但表单正在提交到服务器

@model  DataAccess.Question
你知道我遗漏了什么吗

@model  DataAccess.Question

@model  DataAccess.Question
@使用(Html.BeginForm(“Index”,“Question”,new{QuestionId=Model.QuestionId}))
{
调查
请选择

问题:
@模型.问题ID

@model  DataAccess.Question
说明: @型号.说明

@model  DataAccess.Question
    @foreach(Model.Answers中的var项) {
  • @Html.RadioButton(“ChoiceList”,item.score)@item.AnswerDesc
  • }
}

@model  DataAccess.Question

函数getCheckedRadioButton(){
var radio=document.getElementsByName(“ChoiceList”);
对于(var i=0;i
我还检查了我的web.config,以下键是正确的

@model  DataAccess.Question
 <add key="ClientValidationEnabled" value="true" />
 <add key="UnobtrusiveJavaScriptEnabled" value="true" />

我遇到了类似的问题,解决了向表单元素添加属性的问题。试试这个

@model  DataAccess.Question
Html.BeginForm(new { onsubmit = "return getCheckedRadioButton();" })
与你的其他属性

@model  DataAccess.Question
Html.BeginForm("Index", "Question", new { QuestionId = Model.QuestionId}, FormMethod.POST, new { onsubmit="return getCheckedRadioButton();"})
通过这种方式,表单应该使用这个新属性呈现

@model  DataAccess.Question

请参阅文档

getCheckedRadioButton()
放在提交按钮上不会触发表单验证。将
getCheckedRadioButton()
放在表单元素上

@model  DataAccess.Question
@using (Html.BeginForm("Index", "Question", new { QuestionId = Model.QuestionId, onclick="getCheckedRadioButton()"  }))

@model  DataAccess.Question
$('form')。提交(函数(){
var radio=document.getElementsByName(“ChoiceList”);
对于(var i=0;i
我尝试了以下方法,但在@using(Html.BeginForm(“Index”,“Question”,new{onsubmit=“return getCheckedRadioButton();”,QuestionId=Model.QuestionId})下无效@Learner请尝试我的更新答案,并让我知道。(第二次更新…立即尝试)您是否尝试了我更新的代码?你的表格还没用吗?