在MVC标题标签的MVC下拉选项(mvc dropdown option with title ta

2019-09-20 04:31发布

<select id="priority">
    <option value="calendar" title="icons/icon_calendar.gif">Calendar</option>
    <option value="shopping_cart" title="icons/icon_cart.gif">Shopping Cart</option>
    <option value="cd" title="icons/icon_cd.gif">CD</option>
    <option value="email"  selected="selected" title="icons/icon_email.gif">Email</option>
    <option value="faq" title="icons/icon_faq.gif">FAQ</option>
    <option value="games" title="icons/icon_games.gif">Games</option>
</select>

我想这种类型的MVC下拉与title属性

 @Html.DropDownListFor(model => model.priority, new SelectList(ViewBag.Priority, "Value", "Text"), "-- Select Priority --", new { @class = "required" })

Answer 1:

内置的DropDownList帮手不允许设置额外的HTML个人的选择,如title属性。 您必须编写自己的定制帮助,如果你想实现这一目标。 这里有一个相同的实现 ,你可以看一看适应您的需求。



Answer 2:

@Html.DropDownListFor(model => model.priority, new SelectList(ViewBag.Priority, "Value", "Text"), "-- Select Priority --", new { @class = "required", title="priority" })


Answer 3:

也许你可以用扩展方法1.创建一个自定义的助手将返回MvcHtmlString这将创建自定义HTML的下拉列表,并调用该方法在视图中实现自己所需的输出。

如下图所示

public static class CustomDropdown
{
public static string Dropdown(Priority priority)
      {       
           StringBuilder sb=new StringBuilder ();
           sb+="<Select id='drop'>";
           for(int i=0;i<priority.name.length;i++)
       {
           sb+="<option id='dropop' value='"+priority.value[i]+"'                      title='"+priority.title[i]+"'>"+priority.name[i]+"</option>";
       }
        sb+="</select>";
              return Convert.ToString(sb);                   
      }
   }
 }

2.Bind给出选择的选项使用jQuery的帮助像

  var i=0;
$('.drpclass option').each(function(){
$(this).attr('title',Model.priority.title[i])
i++;
});


文章来源: mvc dropdown option with title tag in mvc