【问题标题】:How to create select element with selected option in shopping cart view如何在购物车视图中使用选定选项创建选择元素
【发布时间】:2021-05-18 11:36:40
【问题描述】:

在 ASP.NET Core 5 MVC 购物车 Razor 视图中用于创建购物车布局选择器。

在 ASP.NET MVC 4.7 中它工作正常,但在设置选定选项的 .NET Core 行中

<option value="List" @(Model.LocatorViewModel.CartLayout == CartLayout.List ? "selected" : "" )>

在 VS 2019 的 razor 编辑器中显示语法错误:

在 Razor 中创建 select 元素 selected 属性的属性方法是什么? 使用 Bootstrap 3。

   <div id="collapseOne" class="panel-collapse collapse in" role="tabpanel" aria-labelledby="headingOne">
     <div class="panel-body">
      <label>
       @await I.I("Display mode")
       <select name="cartlayout" class="form-control" onchange="this.form.submit()">
       <option value="List" @(Model.LocatorViewModel.CartLayout == CartLayout.List ? "selected" : "" )>
       @await I.I("List")
       </option>

     <option value="Thumb" @(Model.LocatorViewModel.CartLayout == CartLayout.Thumb ? "selected" : "" )>
      @await I.I("Thumbnails")
      </option>
    </select>
    </label>
   </div>
 </div>

【问题讨论】:

    标签: asp.net-mvc visual-studio asp.net-core razor asp.net-core-mvc


    【解决方案1】:

    如错误消息所示,'OptionTagHelper' 元素的属性声明区域中不能有 C#。

    在您共享的代码中,option 在您的场景中似乎就像纯 HTML &lt;option&gt; 一样工作。如果是这样,您可以尝试将 @removeTagHelper 应用于特定视图,这将有助于从视图中删除指定的 Tag Helper。

    @removeTagHelper Microsoft.AspNetCore.Mvc.TagHelpers.OptionTagHelper, Microsoft.AspNetCore.Mvc.TagHelpers 
    

    测试结果

    【讨论】:

    • 谢谢。这仍然需要在每个选项中重复相同的@(Model.LocatorViewModel.CartLayout == CartLayout.XXXXX ? "selected" : "" )。是否可以使用一些内置的 Select builder 来避免这种重复?可以创建两个元素列表"Thumb", "List" 并使用数据绑定
    • Is it possible to use some built-in Select builder to avoid this repetition? 你可以提供一个List&lt;SelectListItem&gt; 对象给populate select tag helper,这使我们能够通过设置SelectedSelected 属性来指定默认选择的选项SelectListItem,就像这样new SelectListItem { Value = "CA", Text = "Canada", Selected = true }
    猜你喜欢
    • 2014-03-15
    • 1970-01-01
    • 2018-10-24
    • 1970-01-01
    • 1970-01-01
    • 2022-01-17
    • 1970-01-01
    • 2011-11-20
    • 2023-03-29
    相关资源
    最近更新 更多