ASP.NET提交按钮不起作用

时间:2017-09-25 12:06:50

标签: jquery html asp.net-mvc-4

我有一张input type="submit"的表单。在浏览器中,提交不做任何事情。在"网络"开发人员工具中的选项卡我什开发人员工具中也没有错误。

我的表单看起来像这样:

<div id="app">
    <div class="section" id="msform">
        @using (Ajax.BeginForm("ClubApplication", "Mining", new AjaxOptions { HttpMethod = "POST", InsertionMode = InsertionMode.Replace, UpdateTargetId = "app" }))
        {
            @Html.AntiForgeryToken()
            @Html.ValidationSummary(true, "", new { @class = "text-danger" })
            <fieldset>
                <div>
                    @Html.LabelFor(m => m.Name, new { @class = "col-md-2 control-label" })
                    @Html.TextBoxFor(m => m.Name, htmlAttributes: new { @class = "form-control" })
                </div>
                <input type="button" name="next" class="next action-button" value="Weiter" />
                <p style="color:#d7d7d7">* Pflichtfelder</p>
            </fieldset>
            @*
               More Fieldsets...
            *@
            <fieldset>
                @Html.TextAreaFor(model => model.Intrests, htmlAttributes: new { @class = "control-label col-md-2 materialize-textarea form-control", id = "textarea", rows = "4",  })
                <input type="button" name="previous" class="previous action-button" value="Zurück" />
                <input type="submit" id="submitButton" name="submit" class="submit action-button" value="Abschicken" />
                @Html.ValidationSummary(true, "", new { @class = "text-danger" })
            </fieldset>
        }
    </div>
</div>

服务器端(未在调试模式下调用):

[HttpPost]
public ActionResult ClubApplication(ClubApplication application)
{
   if (ModelState.IsValid)
      return View(application);

   return View(application); 
}

完整的代码已经存在于CryptoWorld.Academy/Mining(您必须注册以查看表单)。

如果有人知道为什么单击提交按钮时表单完全没有任何内容,那将是非常好的。

2 个答案:

答案 0 :(得分:0)

当你使用&#34; Ajax.BeginForm()&#34;然后使用JavaScript提交表单。你需要改变&#34; _Layout.cshtml&#34;在共享视图中,所以添加JavaScript文件&#34; jquery.unobtrusive-ajax.min.js&#34;引用它来处理回发后的ajax表单提交请求。

{{1}}

答案 1 :(得分:0)

这可能是由于您发送到POST方法的表单数据与您期望作为参数的对象不匹配而导致的。

尝试打开开发人员工具(我更喜欢使用Chrome)并在网络标签中查看发布的内容。单击网络窗口中的方法名称,然后向下滚动以查看表单数据。

这应该与您的模型完全匹配,包括任何不可为空的属性。