所以我正在为一个特定的网站制作一个插件,我的问题是他们改变了名称& id是动态的,所以我只能使用Label Name作为选择器。我的问题是,我需要填写2个选项,但只有一个标签可以填写。
HTML:
<div class="input string required">
<label class="string required control-label" for="credit_card_month">exp. date</label>
<select id="credit_card_month" name="credit_card[month]">
<option value="01">01</option>
<option value="02">02</option>
<option value="03">03</option>
<option value="04">04</option>
<option value="05">05</option>
<option value="06">06</option>
<option value="07">07</option>
<option value="08">08</option>
<option value="09">09</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select>
<select id="credit_card_year" name="credit_card[year]">
<option value="2014">2014</option>
<option value="2015">2015</option>
<option value="2016">2016</option>
<option value="2017">2017</option>
<option value="2018">2018</option>
<option value="2019">2019</option>
<option value="2020">2020</option>
<option value="2021">2021</option>
<option value="2022">2022</option>
<option value="2023">2023</option>
<option value="2024">2024</option>
</select>
</div>
和javascript:
$('label:contains("exp. date")').parent('div').find('select').val("08");
$('label:contains("exp. date")').parent('div').find('select').val("2016");
JsFiddle,感谢任何帮助
答案 0 :(得分:2)
.eq()允许您通过索引从jQuery对象中进行选择。 jsFiddle Example
var select = $('label:contains("exp. date")').parent('div').find('select');
select.eq(0).val("08"); // first select box
select.eq(1).val("2016"); // second select box
答案 1 :(得分:0)
通过您的选择ID进行查找。我还想弄清楚你为什么要按标签标签的内容进行选择,这不是一个好主意。
$('label.control-label').parent('div').find('select#credit_card_month').val("08");
$('label.control-label').parent('div').find('select#credit_card_year').val("2016");