使用jQuery更改下拉列表的选定值

我有一个带有已知值的下拉列表。 我正在尝试将下拉列表设置为使用jQuery知道的特定值。 使用常规JavaScript,我会做类似的事情:

ddl = document.getElementById("ID of element goes here");
ddl.value = 2; // 2 being the value I want to set it too.

但是,我需要使用jQuery,因为我在选择器中使用了CSS类(愚蠢的ASP.NET客户端ID ...)。

这是我尝试过的一些方法:

$("._statusDDL").val(2); // Doesn't find 2 as a value.
$("._statusDDL").children("option").val(2) // Also failed.

如何使用jQuery?

更新资料

事实证明,我第一次做对了:

$("._statusDDL").val(2);

当我在上面放一个警报时,它可以正常工作,但是当我删除警报并使它以全速运行时,我得到了错误

无法设置所选属性。 无效索引

我不确定这是不是jQuery或Internet Explorer 6的错误(我猜是Internet Explorer 6),但这非常令人讨厌。


#1楼

在查看了一些解决方案之后,这对我有用。

我有一个带有一些值的下拉列表,我想从另一个下拉列表中选择相同的值...因此,首先我将第一个下拉列表的selectIndex放入变量中。

var indiceDatos = $('#myidddl')[0].selectedIndex;

然后,在第二个下拉列表中选择该索引。

$('#myidddl2')[0].selectedIndex = indiceDatos;

注意:

我猜这是最短,可靠,通用且优雅的解决方案。

因为就我而言,我使用的是选定选项的data属性而不是value属性。 因此,如果您对每个选项都没有唯一的价值,那么上述方法是最简短,最贴心的方法!


#2楼

对于隐藏字段,您需要这样使用:

$("._statusDDL").val(2);
$("._statusDDL").change();

要么

$("._statusDDL").val(2).change();

#3楼

这些解决方案似乎假定下拉列表中的每个项目都有一个与它们在下拉列表中的位置相关的val()值。

如果不是这种情况,事情会更加复杂。

读取下拉列表的选定索引,请使用以下命令:

$("#dropDownList"
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值