Javascript 在下拉列表中查找选项文本,并设置选定文本和更改文本
使用vanilla javascript,我想循环我的下拉列表,更改所选的一个,然后更改显示的文本。我选择了它,但是我没有得到正确的对象名称来更改optionText?这是该项目的一部分Javascript 在下拉列表中查找选项文本,并设置选定文本和更改文本,javascript,Javascript,使用vanilla javascript,我想循环我的下拉列表,更改所选的一个,然后更改显示的文本。我选择了它,但是我没有得到正确的对象名称来更改optionText?这是该项目的一部分 var textToFind = 'LdapUsers'; var dd = document.getElementById('membershipProvider'); for (var i = 0; i < dd.options.length; i++) { if (dd.options[i
var textToFind = 'LdapUsers';
var dd = document.getElementById('membershipProvider');
for (var i = 0; i < dd.options.length; i++) {
if (dd.options[i].text === textToFind) {
dd.selectedIndex = i;
i.options.text = "Edgewood Login"; //This is WRONG
break;
}
}
var textToFind='LdapUsers';
var dd=document.getElementById('membershipProvider');
对于(变量i=0;i
非常感谢您的指导。您需要修改该索引处的选项。现在您正试图修改索引本身 应该是:
dd.options[i].text
不是
var textToFind='LdapUsers';
var dd=document.getElementById('membershipProvider');
对于(变量i=0;i
CIFS
LdapUsers
NFS
试验
您应该使用
dd.options[i].text = "Edgewood Login";
就像检查它的值一样,您可以使用
查询选择器和选择器来访问它,而无需循环
v=“222”;
selProvider=document.querySelector(“#membershipProvider选项[value='”+v+'”]);
if(selProvider){
selProvider.text=“已更改!”;
selProvider.selected=true;
}
AAA
BBB
Ya我已经试过了,但没有看到显示器的变化。我刚刚注意到它工作了,但是我在代码中看到的是正确的,但是显示的仍然是LdapUsers。哦,我喜欢不循环,我还需要将它设置为选中的option@JohnGraham我已经更新了我的答案。它并没有改变我看到的内容,我意识到我也必须改变标签,所以我添加了selProvider.label=“Changed”非常感谢!
dd.options[i].text = "Edgewood Login";