C# 如何将自定义属性添加到Html.DropDownListFor option value而不是select value
上面的代码超出了下面的代码行C# 如何将自定义属性添加到Html.DropDownListFor option value而不是select value,c#,html,asp.net,asp.net-mvc,C#,Html,Asp.net,Asp.net Mvc,上面的代码超出了下面的代码行 @Html.DropDownListFor(m => m.ProductId, new SelectList(Model.Products, "Id", "ProductName", Model.ProductId), htmlAttributes: new { @class = "form-control", @id = "productsnew" }) 澳元 美元 NPR 印度卢比 我需要这样的输出 <select name="Selected
@Html.DropDownListFor(m => m.ProductId, new SelectList(Model.Products, "Id", "ProductName", Model.ProductId), htmlAttributes: new { @class = "form-control", @id = "productsnew" })
澳元
美元
NPR
印度卢比
我需要这样的输出
<select name="SelectedCurrency" id="defaultTaxId" class="form-control">
<option value="AUD">AUD</option>
<option value="USD" selected="selected">USD</option>
<option value="NPR">NPR</option>
<option value="INR">INR</option>
</select>
选择。。。
铬
火狐
即
歌剧院
游猎
我怎样才能做到这一点。请告诉我最简单的方法是: 我回答了这个问题: 并做了一些修改
<select title="Select your surfboard" class="selectpicker">
<option>Select...</option>
<option data-thumbnail="images/icon-chrome.png">Chrome</option>
<option data-thumbnail="images/icon-firefox.png">Firefox</option>
<option data-thumbnail="images/icon-ie.png">IE</option>
<option data-thumbnail="images/icon-opera.png">Opera</option>
<option data-thumbnail="images/icon-safari.png">Safari</option>
</select>
--挑选--
@foreach(Model.Clients中的var客户端)
{
@if(client.Id==Model.ClientId)//在编辑模式下选择项
{
@客户名称
}
其他的
{
@客户名称
}
}
我添加这个javascript是为了在更改时用新的属性值绑定一个div
<select name="@Html.NameFor(model => model.ClientId)"
id="@Html.NameFor(model => model.ClientId)"
class="form-control selectpicker">
<option value="">-- Select --</option>
@foreach (var client in Model.Clients)
{
@if (client.Id == Model.ClientId) //to select the item in edit mode
{
<option selected
value="@client.Id"
email="@client.Email">
@client.Name
</option>
}
else
{
<option value="@client.Id"
email="@client.Email">
@client.Name
</option>
}
}
</select>
$(文档).ready(函数(){
$('.selectpicker')。打开('change',函数(e){
$(“#emailClient”).text($('option:selected',this).attr('email');//将电子邮件地址加载到id为'emailClient'的div中
});
$(“#emailClient”).text($('option:selected',$('selectpicker')).attr('email'));//以编辑模式绑定
});
您可以在asp.net mvc中构建一个自定义Html帮助程序来实现这一点。您想在选项标记上添加数据缩略图属性吗?我建议您使用带有MvcHtmlString
的自定义html帮助程序构建,如以下问题:。
<script>
$(document).ready(function () {
$('.selectpicker').on('change', function (e) {
$("#emailClient").text($('option:selected', this).attr('email')); //load the email address in a div with id 'emailClient'
});
$("#emailClient").text($('option:selected', $('.selectpicker')).attr('email')); //To bind in edit mode
});
</script>