在网页上使用JavaScript实现树结构测试
我需要一个网页,为用户测试,根据每个答案,他们将得到一定的下一个问题。我的web应用程序在Flask上,因此我可以使用某种路由到不同的html终端。但是我想使用javascript,只修改一段带有问题和答案的html代码。我能用这样的物体吗在网页上使用JavaScript实现树结构测试,javascript,web,Javascript,Web,我需要一个网页,为用户测试,根据每个答案,他们将得到一定的下一个问题。我的web应用程序在Flask上,因此我可以使用某种路由到不同的html终端。但是我想使用javascript,只修改一段带有问题和答案的html代码。我能用这样的物体吗 var test = { "QUESTION_1": { "answer_1.1": { "answer_1.1_text": "text1.1", "QUESTION_1.1": {
var test = {
"QUESTION_1": {
"answer_1.1": {
"answer_1.1_text": "text1.1",
"QUESTION_1.1": {
"answer_1.1.1": {
"answer_1.1.1_text": "text1.1",
"QUESTION_1.1.1": {"..."}
}
"answer_1.1.2": {
"answer_1.1.2_text": "text1.1.2",
"QUESTION_1.1.2": {"..."}
}
"answer_1.1.3": {
"answer_1.1.3_text": "text1.1.3",
"QUESTION_1.1.3": {"..."}
}
}
}
"answer_1.2": {
"answer_1.2_text": "text1.2",
"QUESTION_1.2": {
"answer_1.2.1": {
"answer_1.2.1_text": "text1.2.1",
"QUESTION_1.2.2.1": {"..."}
}
"answer_1.2.2": {
"answer_1.2.2_text": "text1.2.2",
"QUESTION_1.2.2.2": {"..."}
}
"answer_1.2.3": {
"answer_1.2.3_text": "text1.2.3",
"QUESTION_1.2.2.3": {"..."}
}
}
}
"answer_1.3": {
"answer_1.3_text": "text1.3",
"QUESTION_1.3": {
"answer_1.3.1": {
"answer_1.3.1_text": "text1.3.1",
"QUESTION_1.3.1.1": {"..."}
}
"answer_1.3.2": {
"answer_1.3.2_text": "text1.3.2",
"QUESTION_.1.3.2.2": {"..."}
}
"answer_1.3.3": {
"answer_1.3.3_text": "text1.3.3",
"QUESTION_1.3.3.1": {"..."}
}
}
}
}
}
因此,每一个答案,用户都会潜入一个新的问题。
如何实现这一点?下面只是一个问题的html示例,但这不是动态的
<div class="form-check col">
<label for="q1">Question1</label>
<p><label class="form-check-label">
<input class="form-check-input" type="radio" value="answer_1">
answer_1
</label></p>
<p><label class="form-check-label">
<input class="form-check-input" type="radio" value="answer_2">
answer_2
</label></p>
<p><label class="form-check-label">
<input class="form-check-input" type="radio" value="answer_3">
answer_3
</label></p>
</div>
问题1
答复1
答复2
答复(三)
那么您想要一个动态表单,根据其他问题的答案提出后续问题?就像许多就业表格上的一个问题:
Have you ever been convicted of a crime?
[X] Yes
[ ] No
If yes, please explain:
Well, it happened a long time ago in a galaxy far, far away...
其中,如果是…
后续问题仅在前一个问题回答为是时出现,如果回答为否则隐藏
我认为可能应该有一些工具让您能够做到这一点,但要自己做到这一点,您需要做3件事:
display:none代码>设置样式或通过实际注入/删除dom元素
对这些步骤中的每一步都做一些研究,并决定你更喜欢用什么方法来实现你的目标。祝你好运 感谢您的帮助,我将尝试对这些步骤进行研究,如果出现更多问题,我会回来