2016-05-23 88 views
0

在我的mvc web應用程序中使用Razor。如何更改複選框的隱藏字段值

我有這樣的:

@Html.CheckBox(Model.SectionModel[i].PreferenceModel[j].Name,Boolean.Parse(Model.SectionModel[i].PreferenceModel[j].Value)) 

所以,我在這裏此複選框的初始值爲TRUE。

現在,如果我的用戶將其設置爲false,我希望更改/創建隱藏字段以顯示此值在我的回發中使用FALSE。

我不能使用@ HTML.CheckBoxFor,因爲該值來自XML文件,並且此值可能是針對不是布爾值的其他控件。

繼建議答案路線我把這個:

@Html.EditorFor(x => x.SectionModel[i].PreferenceModel[j].Value, Model.SectionModel[i].PreferenceModel[j].Name) 

,但該值作爲i的值的字符串文本框呈現,而不是一個複選框。這是opoosite我的問題

是空

+0

可能重複[獲取ASP.NET MVC 4中的複選框值](http://stackoverflow.com/questions/14730746/getting-checkbox-value-in-asp-net-mvc-4) – demo

+0

@演示會查看並檢查。謝謝 –

+0

接受的答案似乎你需要 – demo

回答

1
$("#chkType").change(function (s, e) { 
      if ($(this).is(":checked")) $("#hiddenField1").val('1'); 
      else $("#hiddenField1").val('0'); 
     }); 

這應該工作,我只是從我的項目之一複製它。希望這可以幫助。 :)

+0

謝謝你會在一分鐘內嘗試。 –

+0

似乎是要走的路。謝謝 –

+0

這沒有任何意義。一個'CheckBox()'和'CheckBoxFor()'方法是綁定到一個bool,而不是一個'int'或'string',如果你需要返回視圖,它會完全搞砸模型綁定 –

相關問題