0

您好,当我提交以下表格时出现错误:

<div id="tabs">
  <ul>
    <li><a href="@Url.Action("MainDetails", "ProjectDetails")">Project Details</a></li>
    <li><a href="@Url.Action("ProjectAttachments", "ProjectAttachments")">Project Attachments</a></li>
    <li><a href="@Url.Action("Members", "ProjectNetwork", new { IsTab = true })">Project
        Network</a></li>
    <li><a href="@Url.Action("BulletingBoard", "BulletingBoard")">Bulleting Board</a></li>
    <li><a href="@Url.Action("BidsReceived", "Bids")">Bids Received</a></li>
</ul>
</div>
  <div id="LowerButton">
    @Html.Hidden("MainStatus", @Model.Status)
@using (@Html.BeginForm("Dashboard", "Dashboard"))
{     
    <button type="button" id="MakeComment">
        Make a Comment
    </button>  
    <input type="submit" id="GoDashBoard" value="Return to Project List" />
}
</div>

当我按下按钮“GoDashBoard”时,未达到控制器“仪表板”中的“仪表板”方法。而是出现以下错误:

错误

它告诉我模型属性已发送到服务器。但是,仪表板表单中没有模型属性.. 除非我同时发送许多表单。但我不认为这是可能的,对吧?你们知道为什么在我实际上没有发送任何东西时尝试设置模型属性吗?

更新:

这是仪表板操作的输入:

   public ActionResult Dashboard(int page = 1)
    {
        var user = (User)Session["User"];
        if (user != null)
        {...
    }}

输入是默认整数。但是,我看到了调用的痕迹及其提交的另一种形式,该形式与我使用的那个无关: 在此处输入图像描述

该表单位于其中一个 ajax 选项卡中。我不明白一个表单如何提交另一个表单并且它们没有嵌套。任何人都知道一个好的解决方法?因为我想在两种操作中都接收这两种形式并进行一些验证。

4

1 回答 1

0

我通过删除“仪表板”表单并添加一个不可见的链接来解决它。该按钮将引用不可见的链接:

@*@using (@Html.BeginForm("Dashboard", "Dashboard"))
     {  *@   
    <button type="button" id="MakeComment">
        Make a Comment
    </button>  
    <button name="button" type="button" onclick="document.location.href=$('#GoDashBoard').attr('href')">Return to Project List</button>
    <a id="GoDashBoard" href="@Url.Action("Dashboard", "Dashboard")" style="display:none;"></a>

    @*<input type="submit" id="GoDashBoard" value="Return to Project List" />*@
@*  }*@
于 2012-05-11T23:19:28.953 回答