2013-09-26 63 views
3

任何人都可以告訴我如何使複選框只讀而不是禁用? 對於一個文本框,我使用它像這樣MVC 4複選框/單選按鈕只讀

@Html.TextBoxFor(m => m.FirstName, new { id = "fName", @readonly="readonly" }) 

現在,我有一個複選框,這樣

@Html.CheckBoxFor(m => m.Iseighteen, new { id = "18", @disabled = "disabled" }) 
@Html.RadioButtonFor(m => m.isMale, new { id = "male",@disabled = "disabled" }) 

與殘疾人的問題一個單選按鈕的是,我不能集中在禁用的字段,而我可以在只讀中獲得焦點。如果我選項卡,那麼它選擇只讀字段,以便屏幕閱讀器可以閱讀它,但如果禁用它,則會跳過禁用的所有內容並轉到頁腳。我嘗試使用readonly作爲複選框和收音機,但它不起作用並讓用戶編輯。 那麼,對此有何建議?

+0

我會認爲你的只讀嘗試應該按照這個http://stackoverflow.com/questions/8761647/how-to-create-readonly-textbox-in-asp-net-mvc3-razor祝你好運。 – Trevor

+0

單選按鈕不能被ReadOnly ...這篇文章幫助你http://stackoverflow.com/questions/1953017/why-cant-radio-buttons-be-readonly –

回答

5

可以用戶下面的代碼從選擇複選框,單選按鈕限制用戶...

$(':radio,:checkbox').click(function(){ 
return false; 
    }); 

希望這有助於你。

0

使用try

@Html.CheckBoxFor(model => model.IsActive, new { onclick = "return false" }) 

希望它會工作更簡便的方法。