2012-07-24 92 views
2

我有以下的HTML代码:使用JQuery选择最后选择值?

<div id="casesList1" class="cases"> 
    <select id="casesList"> 
     <option value="1">case1</option> 
     <option value="2">case2</option> 
     <option value="3">case3</option> 
    </select> 

    <div id="casesList2" class="cases"> 
     <select id="casesList"> 
     <option value="4">case4</option> 
     <option value="5">case5</option> 
     </select> 
    </div> 

</div> 

,我需要使用JQuery的选择输入的最后一个值来选择,在内部的div。例如,如果我选择了“case5”,函数应返回5,问题是我有更多的选择输入id'casesList'。 我尝试这样做:

$('#casesList:last option:selected').attr('value'); 

但只选择第一选择值...

+0

您不能两次使用相同的ID。将id“casesList”更改为“casesList”类,然后尝试使用选择器“.casesList:last option:selected” – 2012-07-24 09:59:13

回答

2

这是我如何解决它:

$('select[name=category]').last().attr('value'); 

在给出选择名称类别之后..

2

尝试

$('.cases:last option:selected').val(); 

$('div[id^="casesList"]:last option:selected').val(); 
1

元素的ID应该是唯一的,如果你想重复你应该使用类而不是。

$('.cases:last option:selected').attr('value'); 

$('.cases:last option:selected').val(); 
6

对于初学者来说,你不能重复自己的网页中的ID - 这是无效的代码。所以你的“caseList”的id对于每个select元素都需要不同。

你可以尽管使用重复的课程,这样你就可以访问每一个元素的方法:

$('.caseList:last').val(); 
+0

它没有用,但我给了它一个名称'category',这就是我解决它的方法: $ ( '选择[名称=类别]')最后()ATTR( '值')。; – Sarah 2012-07-24 10:54:42

1

试试这个

$('div.cases:last > select option:selected')[0].attr('value')