【问题标题】: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>
}

【问题讨论】:

  • 这很相似,但我不确定如何在我的代码中实现它。 :'(stackoverflow.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 成功了!谢谢你,谢谢你,谢谢你!是的,当我检查这些值时,它们是不正确的。我不知道如何纠正。

标签: c# html asp.net-core-mvc


【解决方案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?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多