js点击下拉菜单申请a3_jquery中多个下拉框如何获取已选值(每个下拉框的name相同)...

change事件是select下拉框值改变后触发的,所以只能在之前的click或mousedown中先获取一个临时变量储存以前的值。

还有你说的下拉框不知道是哪个的问题,这个确实比较难办,即使循环$("select[name=selectName1]")包含的元素,也不知道顺序,最好的办法就是你事先先给select定一个标志,比如第一个select,定flag = 0,第二个定flag=1,依次类推,而且你要知道哪个flag对应什么内容的select。

$(document).ready(function(){

var tempValue,tempName;

$("select[name=selectName1]").mousedown(function(){

tempValue = $(this).val();

tempName = $(this).find('option:selected').text();

});

$("select[name=selectName1]").change(function(){

alert('change之前的值与文本显示 ' + tempValue + ' ' + tempName)

//如果这样由于id一样,排在第二个位置的下拉框,当change的时候 取不到值 ?

alert($(this).val());

//显示下拉框中已选文本值 ,同上

alert($(this).find('option:selected').text());

///如果用以下,会把两个下拉框选中的值叠加起来,如选择美国的时候,打印的值为 "美国11" 怎么办?

//页面上有几个select,这个应该可以知道的。

var text= '';

for(var i=0;i<2;i++){

text += $("select[flag="+i+"]").find('option:selected').text();

}

alert(text);

//如果不知道页面上有几个select,而且不管顺序的话,也可用下面的方法

var text= '';

for(var i=0;i

text += $("select[name=selectName1]:eq("+i+")").find('option:selected').text();

}

alert(text);

//alert($("select[name=selectName1]:eq(0)").find('option:selected').text() + $("select[name=selectName1]:eq(1)").find('option:selected').text())

});

});

中国

美国

德国

11

22

33

2012年1月08日 15:17

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值