我有一个dropdwon选择和一个div,它对下拉值的选择变化作出反应。基本上我有两件事: 1)在domready上,我选择了默认值“All”。当选择“全部”文本时,我需要从div中删除一个链接:这是下拉列表的代码:
<select name="selectedRegion" id="selectedRegion">
<option>All</option>
<option>SF</option>
<option>NY</option>
<select>
我无法使用.val()
来获取所选值,因为“全部”的值是动态生成的,并且对于不同的值会有所不同。
是下拉选项为“全部”时要删除的链接的div:
<div class="test-info" id = "test-info"><h3 class="info-title">Title</h3>
<div class="region-table" id ="region-table">
<dl>
<dt class="label">Transactions:</dt>
<dd class="value"><span class="stats-transactions link">23</span></dd>
<dt class="label">Failures:</dt>
<dd class="value"><span class="stats-failures link">22</span></dd>
</dl>
</div></div>
class="link"
建议我要在页面加载时删除的链接。
基本上除了默认的“全部”之外的所有其他选项,我都会分配链接。
我试过这个:
$(document).ready(function(){$('.stats-transactions ').removeClass('link')})
并删除了“交易”的链接。我可以在页面加载时为所有'spans'添加一个类来链接链接。
如何获取链接onchange
,选择其他选项以显示链接并选择返回“全部”选项应该删除链接?
我该怎么做?帮助真的很感激。
答案 0 :(得分:1)
如果我理解正确,我会做两件事。首先,最初不要将.link
放在元素上。然后,使用select的selectedIndex
作为测试:
http://jsfiddle.net/isherwood/8Wv9R/
$(document).ready(function () {
$('#selectedRegion').change(function () {
if ( this.selectedIndex != 0 ) {
$('.stats-transactions ').addClass('link');
} else {
$('.stats-transactions ').removeClass('link')
}
});
});
如果由于某种原因你无法修改HTML,只需在加载时运行原始语句,然后运行更改功能:
$('.stats-transactions ').removeClass('link')
$('#selectedRegion').change(function () {
...