使用JQuery选择具有给定选择值的选择

时间:2014-12-17 16:04:35

标签: jquery selector

我继承了一个MVC表单,它发出选择动态标识并由前缀,guid和后缀命名。例如,

<select id="N9_ID_f0d7ca03-0221-41b7-a457-3494b9e483e3__N9QualifierID" name="N9[ID_f0d7ca03-0221-41b7-a457-3494b9e483e3].N9QualifierID">
    <option value="58">Automated Export System (AES) Internal Transaction Number (ITN)</option>
    <option value="60">Automated Export System Export Information Code Exemption Number (Note 1)</option>
    <option value="59">Automated Export System Option 4 Employee Identification Number</option>
    <option value="8">Bill of Lading</option>
<select>

将有多个选项具有相同的前缀和后缀。前缀和后缀有效地将选择分区为类,并且guid将动态生成的选择与其他动态生成的控件(如文本框)联系起来。我需要找到具有给定值的选择,这样我就可以提取guid并使用具有该guid的其他输入执行操作。

我的问题:

使用JQuery,如何选择具有给定选定值的选择?例如,我知道至少有一个选项的选择值为59,但我不知道哪一个。

2 个答案:

答案 0 :(得分:2)

这将返回所有选项,其中包含59作为其值的选项。

var selects = $('option[value="59"]').parent();

如果您想要那些具有59作为当前选定值的那些

var selects = $('option[value="59"]:selected').parent();

然后,一旦你有了选择权,你就可以使用.each()来做你想做的事了

selects.each(function(){
  // extract guid and do whatever..
});

答案 1 :(得分:0)

您可能需要属性,而不是属性(不会更改),因此使用过滤器应该可以使用

$('select').filter(function() {
    return this.value === '59';
}).prop('id');