此代码查看带有'townid'的下拉列表是否具有Central选项,然后在all
下拉列表的第一个选项后放置Central。
var central = $('#townid option:contains("Central")');
if(central){
central.insertAfter('select option:first-child');
}
我的问题是:
如何在具有townid id的下拉列表之后添加它?我的意思是:
var central = $('#townid option:contains("Central")');
if(central){
central.insertAfter('#townid select option:first-child');
}
例如:
<select id=townid>
<option value="5000">AL</option>
<option value="5001">NY</option>
<option value="5002">LA</option>
<option value="5003">NY</option>
<option value="5204">Central</option>
<option value="5024">FA</option>
</select>
<select id="someid">
<option value="3002">Brooklyn</option>
<option value="6001">Manhattan</option>
</select>
在这个过程之后,他们应该看起来像:
<select id=townid>
<option value="5000">AL</option>
<option value="5204">Central</option>
<option value="5001">NY</option>
<option value="5002">LA</option>
<option value="5003">NY</option>
<option value="5024">FA</option>
</select>
<select id="someid">
<option value="3002">Brooklyn</option>
<option value="6001">Manhattan</option>
</select>
答案 0 :(得分:2)
如何在ID为
townid
的下拉列表后添加它?
好的,我假设您的HTML看起来像这样:
<select id="townid">
<option>
…
</option>
</select>
在这种情况下,您可以使用:
$('#townid option:contains("Central")').appendTo('#townid option');
如果option
中有多个#townid
元素,而您只想选择第一个,只需更改选择器:
$('#townid option:contains("Central")').appendTo('#townid option:first');
在您的示例中,请勿使用if (central)
,而是使用if (central.length)
。
答案 1 :(得分:1)
你刚搞砸了选择器,因为#townid是select标签。
var central = $('#townid option:contains("Central")');
if(central.length === 1){
central.insertAfter('#townid option:first-child');
}