<select id="milesAway">
<option id="5" value="5">5 miles</option>
<option id="10" value="10">10 miles</option>
<option id="25" value="25">25 miles</option>
<option id="50 value="50">50 miles</option>
<option id="100" value="100">100 miles</option>
<option id="250" value="250">250 miles</option>
<option id="500" value="500">500 miles</option>
</select>
<input type="text" id="zipCode" />
<input type="text" id="cityState" class="cityState" />
因此,在任何时间点,只会显示这3个可用输入中的一个。它们都由.show()
和.hide()
我是否使用JQuery找出哪一个是显示的那个并获得它的id。
谢谢!
答案 0 :(得分:3)
你可以做到
$(':input:visible') //This will selects all inputs on the page. You can narrow this down by specifying an ID that wraps the input you are looking or.
您还可以通过执行
检查输入是否可见$('#cityState').is(':visible')
答案 1 :(得分:0)
阅读评论后首次更新:
var id = $("#milesAway:visible option:selected, #zipCode:visible, #cityState:visible").attr('id');
因为我看到你把ids放在选项中,我想你想要回来。这是输入或选择id的替代方法。
var id = $("#milesAway:visible, #zipCode:visible, #cityState:visible").attr('id');
答案 2 :(得分:-1)
$('option:visible');
将匹配所有未隐藏的选项元素,隐藏我的意思是显示:无,我不认为可见性:隐藏计数!你必须在“选择器”部分
下的jQuery文档中仔细检查这一点答案 3 :(得分:-1)
这里你去:
$('select:not(:visible)');
我建议在每个元素中添加一个类来轻松选择它们:
$('.toggleInputs:not(:visible)');