2012-05-10 32 views
0

您好我有一個錯誤,當我提交以下表格:錯誤的submiting形式MVC3淨

<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」的方法,「儀表板」控制器「儀表板」未達到。相反,出現以下錯誤:

error

它告訴我,一個模型屬性beign發送到服務器。但是,儀表板內部沒有模型屬性,除非我同時發送多個表單。但我不認爲這可能是正確的?你們有沒有想過爲什麼在我沒有發送任何信息時試圖設置一個模型屬性?

更新:

這是儀表盤動作的輸入:

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

輸入是默認的整數。但是,我看到了通話的跟蹤,並提交了另一個與IM無關的表單: enter image description here

該表單位於ajax選項卡之一的內部。我不明白一個表單如何提交另一個表單並且它們不是嵌套的。任何人都知道一個很好的解決方法?因爲我想在這兩種行爲中都接受這兩種形式並進行一些驗證。

+2

你可以發佈'Dashboard'操作嗎? – nemesv

回答

0

我通過刪除表單「Dashboard」來解決它,而不是添加一個不可見的鏈接。該按鈕將引用隱形鏈接:

@*@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" />*@ 
@* }*@