Javascript 如何基于下拉选择动态地重新设置文本短语

Javascript 如何基于下拉选择动态地重新设置文本短语,javascript,html,Javascript,Html,我有一个要求,建立一个多问题的调查。根据对从下拉列表中选择的一个问题的回答,我需要重新表述下一个问题,该问题也涉及下拉列表选择。我正在做一个函数调用onchange,并更改下一个问题的文本,它得到了更改,但下拉列表没有显示出来。下面是代码片段。请告诉我出了什么问题 HTML: 试试这个: 变量选项={ “A”:{ 请选择:, A:一个价值观, B:B值, C:C值, D:D值, }, “E”:{ 请选择:, E:E值, F:F值, G:G值, H:H值, }, “G”:{ 请选择:, G:G值

我有一个要求,建立一个多问题的调查。根据对从下拉列表中选择的一个问题的回答,我需要重新表述下一个问题,该问题也涉及下拉列表选择。我正在做一个函数调用onchange,并更改下一个问题的文本,它得到了更改,但下拉列表没有显示出来。下面是代码片段。请告诉我出了什么问题

HTML:

试试这个:

变量选项={ “A”:{ 请选择:, A:一个价值观, B:B值, C:C值, D:D值, }, “E”:{ 请选择:, E:E值, F:F值, G:G值, H:H值, }, “G”:{ 请选择:, G:G值, }, “其他人”:{ 请选择:, 其他人:其他人的价值, }, }; $'q6_select'。在'change'上,函数E{ 如果此值为0.value=={ $'qs7'。隐藏; $'error-message-1,error-message-2'。显示; }否则{ $'qs7.text'您选择的:'+this.options[this.selectedIndex].innerText; $'error-message-1,error-message-2'。隐藏; $'error-message-3,error-message-4'。显示; $'q7_select'。为空; $.eachOptions[this.value],functionkey,value{ $'q7_select'。追加$.attrvalue、value.textkey; }; } }; $'q7_select'。在'change'上,函数E{ 如果此值为0.value=={ $'error-message-3,error-message-4'。显示; }否则{ $'error-message-3,error-message-4'。隐藏; } }; 6.你最喜欢我们的什么

请选择 ABCD EFGH 服务非常满意 其他人具体说明 请从菜单中选择一项 请填写必填字段 您决定选择的原因:

请选择 A. B 其他人具体说明 请从菜单中选择一项 请填写必填字段
我认为你在这方面有一个小错误

<div class="section single-question" id="qs7">
您需要关闭div并将其保持为空div,如下所示:

<div class="section single-question" id="qs7"> </div>
当您运行JS代码时,您正在替换它的所有内容,包括下一个下拉列表。看

如果要在该分区中添加一些html,还可以替换.text方法以使用.innerHtml。请阅读更多


我认为以上回答了你关于为什么下一个下拉列表消失的确切问题。如果现在您还想用一些逻辑来控制下一个下拉内容,我想这个stackoverflow会解决这个问题。

已经在

<p id='pId'>Why you decided to select:</p>

你真的想把结果输出到qs7吗?qs7是一个有很多后代的div!!!如果这正是您想要实现的,那么使用html函数而不是文本我认为您的意思是,当用户选择true value时,将显示下一个下拉列表,对吗?@Leo,Tomato32我只需要根据qs6中的选择更改qs7中的文本。我不能在下降之前关闭qs7分区。我也不能在文本中再加一个div了。@RajeshBhat,这没有任何意义。qs7里面有一堆子html元素,没有文本。你说的修改课文是什么意思?什么文本?这不起作用,我仍然看不到第二个下拉列表我做了更改,现在检查我需要修改现有文本,这是添加新文本。现在文本正在修改
<div class="section single-question" id="qs7"> </div>
<p id='pId'>Why you decided to select:</p>
 var ptag = docuemnt.getElementById('pId');
ptag.innerhtml = "Your string here";