不正确的单选按钮设置为“选中”
Posted
技术标签:
【中文标题】不正确的单选按钮设置为“选中”【英文标题】:incorrect radio button set as "checked" 【发布时间】:2022-01-21 20:31:45 【问题描述】:新手问题,请善待。
我在 C# MVC 应用程序中有这个 Index.cshtml 页面。当页面被渲染时,最后一个按钮被选中。如何将第一个按钮(全部)设置为选中?
我正在阅读“类似问题”,但似乎没有一个能解决我的问题。请帮忙。如果您能向我解释一下,请提前感谢您。
<h1>@ViewBag.title</h1>
<form action="/list/index" method="post">
<h2>Search by:</h2>
<p>
@foreach (var column in ViewBag.columns)
<span>
<input type="radio" name="searchType" id="@column.Key" value="@column.Key" checked="@column.Key == 'all'" />
<label for="@column.Key">@column.Value</label>
</span>
</p>
<p>
<label for="searchTerm">Keyword:</label>
<input type="text" name="searchTerm" id="searchTerm" />
</p>
<input type="submit" value="Search" />
</form>
<hr />
@if (ViewBag.service != null)
<table>
@foreach (var srv in ViewBag.service)
<tr>
<td>
<p>Provider: @srv.Provider.Name</p>
<p>Location: @srv.Location.Address</p>
<p>Category: @srv.Category.Name</p>
@* <p>Tag: @service.Tag</p>
<p>Keyword: @service.Keyword</p>*@
</td>
</tr>
</table>
【问题讨论】:
这很相似,但我不确定如何在我的代码中实现它。 :'(***.com/questions/58030796/… 我不认为你对checked
属性的插值能达到你认为的效果。试试<input type="radio" name="searchType" value="@column.Key" checked=@(column.Key == "all")>
。如果您感到困惑,也请始终检查实际输出。
是checked
的存在 或不存在 定义了布尔值,而不是checked=true 或checked=false。 checked 的值可以是任何值;重要的是它是否存在。您可以拥有<input type=radio checked="nooo please don't check me"
,它将被检查,因为它有 checked
- 如果您不想检查按钮,请不要将checked
放在标签中的任何位置
@AluanHaddad 成功了!谢谢你,谢谢你,谢谢你!是的,当我检查这些值时,它们是不正确的。我不知道如何纠正。
【参考方案1】:
您可以使用checked
选中任何单选按钮:
<input type="radio" checked />
要有条件地检查您的任何单选按钮,请使用:
@if(column.Key == 'all')
<input type="radio" name="searchType" id="@column.Key" value="@column.Key" checked />
else
<input type="radio" name="searchType" id="@column.Key" value="@column.Key" />
【讨论】:
【参考方案2】:在一种情况下:
<input type="radio" name="searchType" id="@column.Key" value="@column.Key" @(column.Key == 'all' ? "checked" : " ") />
Checked or not checked?
【讨论】:
以上是关于不正确的单选按钮设置为“选中”的主要内容,如果未能解决你的问题,请参考以下文章