当我输入$('select[id*=lstAdvGradYear]')
chrome给我
<select name="Views\ContentArea$ctl00$lstAdvGradYear" id="Views\ContentArea_ctl00_lstAdvGradYear" class="ddReplace" style="display: none; ">
<option value="2016">2016</option>
<option value="2015">2015</option>
<option value="2014">2014</option>
<option selected="selected" value="2013">2013</option>
<option value="2012">2012</option>
</select>
当我使用$('select[id*=lstAdvGradYear]').val()
键入"2016"
chrome回复时。
当我输入$('select[id*=lstAdvGradYear] option:selected ').val()
时,Chrome也会回复"2016"
当我使用$('select[id*=lstAdvGradYear] option:selected')
[<option value="2016">2016</option>]
chrome回复时
我做错了什么?
我已经确认没有其他具有类似名称的下拉菜单
<小时/> 编辑:要明确,我的问题是
.val()
应该返回2013年而不是2016
答案 0 :(得分:3)
这是因为在前两种情况下,你调用了$ .val()函数,但在最后一种情况下,你没有调用。
$ .val()返回HTML元素的值。 $()返回一个表示一个或多个html元素的对象,您可以调用许多方法,包括$ .val()
更新:根据文档(http://api.jquery.com/attribute-contains-selector/),id*=
右边的值似乎是应该用引号括起来。这有什么不同吗?