2017-08-15 72 views
0

我有一個可以啓動選中一個單選按鈕,但即使條件爲假,它的書面方式在HTML checked屬性,瀏覽器顯示託運未檢查單選按鈕ASPNET MVC

@Html.RadioButton("radio", "1", new { @checked = (condition) }) @Html.RadioButton("radio", "2", new { @checked = (condition) })

+0

因爲你'@checked = (condition)'。它是否存在確定單選按鈕是否被選中(checked =「checked」或「checked =」false「」或「checked =」AnythingAtAll'都表示同樣的東西 - 它將被檢查 –

+0

你想在這裏做什麼,它的屬性'radio'的值決定了被檢查的內容,如果它的'1'第一個將被選擇,如果它的第二個將被選中,否則不會是什麼樣的「類型」和價值或你的財產 –

回答

1

我覺得正確使用將是本

@Html.RadioButton("radio", "1", (condition)) 

根據RadioButton ,單選按鈕構造定義爲

RadioButton(string name,Object value, bool isChecked) 

這將產生

<!-- isChecked is true. --> 
<input type="radio" name="name" value="value" checked="checked" /> 
<!-- isChecked is false. --> 
<input type="radio" name="name" value="value" /> 

我認爲你要使用它不需要新htmlattribute。

0

您用於@Html.RadioButton的過載採用HTML屬性。當您指定checked = (condition)時,您將指定具有值的屬性checked

對於HTML輸入,不是將checked值設置爲true或false的情況。 checked屬性的存在意味着控件被檢查。所以只需checkedchecked = "",甚至checked = "false"都將導致檢查控制。

又見此相關的問題:What's the proper value for a checked attribute of an HTML checkbox?

你的情況,你會與過載HtmlHelper.RadioButton Method (String, Object, Boolean)它可以讓你的控件是否不檢查指定一個布爾值更好。

0

只是檢查在控制器和電源布爾您的病情通過ViewBag

@ Html.RadioButton( 「TestButton」, 「價值」,(布爾)ViewBag.DefaultValue)