gpt4 book ai didi

javascript - 将div文本转换为下拉列表,div文本是选中的选项

转载 作者:行者123 更新时间:2023-12-04 01:56:21 26 4
gpt4 key购买 nike

div 的文本需要成为生成的选择下拉列表的选定选项。我成功地创建了下拉菜单并替换了 div,但是,设置所选选项的值没有被选中。

下面是我如何获取 div 值以及如何创建下拉列表

<script type="text/javascript">

var d = document.getElementById("val_to_set");

var rvalue = d.innerHTML; //Getting the value of div

//The options of a dropdown are populated from another dropdown menu

var listOptions = document.getElementById("dropdown");

var newddown = '<select name="displayoption">'+listOptions.innerHTML+'</select>';

//Replace the div with the created dropdown menu

d.innerHTML = newddown; //TARGET ELEMENT

</script>

我找到了解释如何按值、文本或索引选择的链接

[1] http://www.daftlogic.com/information-programmatically-preselect-dropdown-using-javascript.htm

当尝试获取新创建的下拉列表的选项时,我得到“选项未定义”

新的下拉列表不会选择给定的选项 - 我已经尝试了给定链接中的所有情况,包括在用下拉列表替换 div 之前添加以下行。

var seeker = ">"+rvalue+"<";
newddown = newddown.replace(seeker, "selected"+seeker);

我做错了什么?我是 jQuery 的初学者,我想坚持使用 JavaScript。

已编辑 - 包含用于填充目标元素选项的下拉列表

<select id="dropdown" name="listedoptions" >
<?php

echo " <option value=''></option> \n";
$ores = sqlStatement("SELECT option_id, title, is_default FROM list_options" .
" WHERE list_id = 'adjreason' ORDER BY seq, title");

while ($orow = sqlFetchArray($ores)) {
echo " <option value='" . $orow['option_id']). "'";
echo ">" . $orow['title'] . "</option>\n";
}
?>
</select>

最佳答案

这是一个使用您的代码和一些示例选项的工作示例:

http://jsfiddle.net/m6y3mgky/

不是替换文本,而是很容易迭代选项并以编程方式选择正确的选项,这是根据您引用的文章。这也不太容易出错。

var opts = d.childNodes[0].options;
for (var i = 0; i < opts.length; i++) {
if (opts[i].value == rvalue) {
opts[i].selected = true;
break;
}
}

注意 d 引用

,而不是

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com