【发布时间】:2014-09-08 14:09:26
【问题描述】:
我有一个包含已知值的下拉列表。我正在尝试将下拉列表设置为我知道使用 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)的错误,但这非常烦人。
【问题讨论】:
-
这里的问题最终是 IE6 的问题。我正在为 select 元素创建新的选项元素,然后尝试将值设置为那些新创建的选项元素之一。 IE6 错误地等待,直到它从脚本中获得控制权以实际在 DOM 中创建新元素,所以发生的事情是我试图将下拉列表设置为尚不存在的选项,即使它们应该有。
-
你可以使用纯javascript
dd1 = document.getElementsByClassName('classname here'); dd1.value = 2;
标签: javascript jquery asp.net html-select