不正确的单选按钮设置为“选中”

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 属性的插值能达到你认为的效果。试试&lt;input type="radio" name="searchType" value="@column.Key" checked=@(column.Key == "all")&gt;。如果您感到困惑,也请始终检查实际输出。 checked存在不存在 定义了布尔值,而不是checked=true 或checked=false。 checked 的值可以是任何值;重要的是它是否存在。您可以拥有&lt;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?

【讨论】:

以上是关于不正确的单选按钮设置为“选中”的主要内容,如果未能解决你的问题,请参考以下文章

如何在radiogroup中将选中的单选按钮设置为默认值?

MFC的单选按钮、复选框问题

如果未选中单选按钮,如何将隐藏字段设置为零

为选中的单选按钮分配初始值

AngularJs:如何设置基于模型检查的单选按钮

React.js - 如何设置选中/选中的单选按钮并跟踪 onChange?