如何从下拉列表中获取ID?

时间:2014-01-21 12:37:13

标签: c# asp.net asp.net-mvc razor

我有一个清单:

public IList<SelectListItem> ToCountryList { get; set; }

我在剃刀视图中有这一行:

@Html.DropDownListFor(m => m.Filter.ToCountryId, Model.ToCountryList, string.Empty, new { style = "min-width: 100px; width:180px" })

现在我希望jQuery从下拉列表的选定值中选择ToCountryId 我需要记录的id。例如 - 我有一对:ID-NAME 5-USA。所以我需要检索5(int)

我该如何获得身份证?

这没有任何结果:

$("select[name='Filter.ToCountryId'] option:selected").val()
来自浏览器的HTML(不确定如何发布 - 所以纯文本):

..select starts

select id="Filter_ToCountryId" name="Filter.ToCountryId" style="min-width: 100px; width:180px"

option tags with countries

..select ends

2 个答案:

答案 0 :(得分:3)

只需给你的下拉列表一个确定的ID:

@Html.DropDownListFor(
    m => m.Filter.ToCountryId, 
    Model.ToCountryList, 
    string.Empty, 
    new { id = "myddl", style = "min-width: 100px; width:180px" }
)

然后您可以使用id选择器轻松获取所选值:

$('#myddl').val()

答案 1 :(得分:0)

您应该从选择本身获取值,而不是选项:

$("select[name='Filter.ToCountryId']").val()