使用javascript在下拉列表中显示选项的键和值

使用javascript在下拉列表中显示选项的键和值,javascript,drop-down-menu,key-value,Javascript,Drop Down Menu,Key Value,功能键(id) { var值; 选择var; var select=document.getElementById(id); if(值!=null) 选择。选项[selected]。文本=值; selected=select.selectedIndex; var键; key=select.options[selected].value; 值=选择。选项[选择]。文本; select.options[selected].innerHTML=key; } 奥迪 梅赛德斯 您试图做的事情是不可能的(

功能键(id)
{
var值;
选择var;
var select=document.getElementById(id);
if(值!=null)
选择。选项[selected]。文本=值;
selected=select.selectedIndex;
var键;
key=select.options[selected].value;
值=选择。选项[选择]。文本;
select.options[selected].innerHTML=key;
}

奥迪
梅赛德斯

您试图做的事情是不可能的(使用本机
)。您在关闭的
中看到的项目只是当前选定的
。打开下拉列表时,您会在两个位置看到相同的
“选择”和“列表”中。当值相同时,无法在每个位置看到不同的值


但是,您可以在其他地方显示所选值,例如,在
旁边的第二个元素中,这不是一个完美的答案。。 但是一个可能的解决办法

功能键(){
document.getElementById(“Carss”).style.width=“100px”
}
函数键2(){
document.getElementById(“Carss”).style.width=“34px”
document.getElementById(“Carss”).blur();
}

奥迪
梅赛德斯

我不清楚你想做什么<代码>的
具有显示值(元素内容)和数据值(
value
属性内容),因此您可以在内部使用不同的值时向用户显示可读的值。我无法想象,混淆两者会起到什么作用。另外,在你获得足够的声誉之前,你不能直接附加图像。你能显示html标记以便我们了解更多你想做的事情吗?此功能是否由事件触发?为什么要分配所选的索引?为什么要将该值设置为具有相同的键内容?要显示键,为什么不使用:document.getElementById(“show”).innerHTML=select.options[selected].value@hon2a此功能将作为下拉菜单的一次更改事件触发。让我举一个例子。选项键奥迪A梅赛德斯M最初将显示奥迪和梅赛德斯选项。当我点击奥迪时,A键应该显示在下拉列表中,这是我可以通过上面的代码实现的。继续。。。当我第二次点击下拉菜单时,奥迪和梅赛德斯都会显示在下拉菜单中,同时显示项中的A键。我有图像来清楚地说明我的要求。但我无法发布图像:(@softwareplay请帮我解决这个问题。我不能使用InnerHTML在同一个下拉列表中显示键和值吗?有没有其他技术可以实现这一点?
InnerHTML
只是
的内容。same
表示相同的
InnerHTML
。如果您想同时显示字母和名称作为显示值,您可以简单地执行类似于
M:Mercedes
的操作。作为补充说明,您还没有真正告诉我们为什么需要此反直观的功能。当用户在下拉列表中选择一个值时,她希望该值显示为框中所选的值,而不是其他一些无法理解的值。我需要将此功能添加到b中e在我工作的应用程序中实现。我需要在框中显示M,而在列表中,我希望在选择选项后第二次单击梅赛德斯时显示它。不希望两者都显示在yu提到的同一行中,然后需要实现更复杂的内容。例如,在<代码>内容,显示所选的不可单击的
键(
指针事件:无
),这样单击它就可以正确打开
。谢谢您的时间!但是当我第二次单击下拉列表时,应该显示前面选择的选项的键和值。在代码中只显示两次值。