2016-10-10 32 views
-1

我得到一個空的模型,當我打電話html.action方法時,這裏是我的看法型號空提交表單到控制器

@model Models.Element.ElementEditModel 
    @{ 
     Layout = null; 
    } 
    @using (Html.BeginForm("Save", "Element", FormMethod.Post, new { autocomplete = "off", onsubmit = "return false;" })) 
{ 

     @using (Html.BeginForm("Save", "Element", FormMethod.Post, new { autocomplete = "off", onsubmit = "return false;" })) 
     { 
     if (Model != null) 
    { 
     @Html.HiddenFor(x => x.ID) 
     @Html.HiddenFor(x => x.style) 
     } 
       <div> 
        @Html.Partial("Properties/_genre") 
        @Html.Action("Properties", "Option", new { ID = Model.ID })  
       </div> 
    <a href="@Url.Action("Save", "Element")"> save</a> 

如果我刪除Html.Action它的作品!

[HttpPost] 

    public ActionResult Save(Models.ElementEditModel.ElementEditModel model) 
    {...} 
+0

? – DCruz22

+0

我編輯了我的帖子 –

+0

嵌套表單無效,不支持。但'onsubmit =「return false;''取消提交,所以你永遠不會回發數據(和你的'保存'鏈接只是調用一個GET方法不會傳遞任何值) –

回答

1
  1. 你有兩個開始形式。不要這樣做。

  2. 你的觀點的模型@model Models.Element.ElementEditModel和動作的模型Models.ElementEditModel.ElementEditModel model似乎不匹配。

  3. 你正在調用保存在一個錨標籤,這將導致一個GET而不是一個POST。使用帶有提交類輸入資料,讓表單知道後你在哪裏定義視圖中的屬性數據

<input id="SaveButton" value="Save" type="submit"> 
+0

兩個開始形式只是複製/粘貼錯誤對不起 –

+0

仍然不能使用按鈕 –

+0

更新問題與所做的更改。 – Nkosi