我的下拉菜单, MVC代码
@foreach (var attribute in Model)
{
string controlId = string.Format("product_attribute_{0}_{1}_{2}", attribute.ProductId, attribute.ProductAttributeId, attribute.Id);
@switch (attribute.AttributeControlType)
{
case AttributeControlType.DropdownList:
{
<select name="@(controlId)" id="@(controlId)">
@foreach (var pvaValue in attribute.Values)
{
<option>@pvaValue.Name</option>
}
</select>
}
break;
}
}
Html生成的代码:
<dd>
<select id="product_attribute_5_1_13" name="product_attribute_5_1_13">
<option value="36">Black</option>
<option value="37">White</option>
</select>
</dd>
<dd>
<select id="product_attribute_5_2_14" name="product_attribute_5_2_14" class="valid">
<option value="38" selected="selected">1 test</option>
<option value="39">2 Test</option>
</select>
</dd>
现在我想要使用jquery选择第二个下拉列表或值。
备注: 它的id和name值对于所有下拉列表都是动态的。
如何在按钮点击时获得下拉选择值?
答案 0 :(得分:0)
答案 1 :(得分:0)
如您所知,您的问题尚不清楚。你没有提到表单,所以我不会认为点击的按钮是表单提交按钮。查看此内容的唯一逻辑方法是,您可以在按钮单击时返回表示页面上name/value
对所有 select
元素的数组/对象:
$(function() {
$('button').on('click', function() {
var values = $('select').map(function(i,sel) {
var val = {};
val[sel.name] = sel.value;
return val;
}).get();
});
console.log( values );
//sample output: [{"product_attribute_5_2_13":"36"}, {"product_attribute_5_2_14":"38"}]
});