【发布时间】:2018-07-04 05:02:55
【问题描述】:
我已尝试从 Google 和之前提出的问题中获取解决方案,但问题和答案仅涉及具有多个选项的选择。为了澄清更多,当我为循环生成代码以在屏幕上创建多个选择然后使用 JavaScript 获取 selectedIndex 或值并使用警报检查是否采用正确的值时,然后只有来自第一个选择表的选定选项的值通过生成for 循环重复显示。请找到以下代码:
<body>
<script>
// JSON code getting g named array throgh JSON.parse method
for (g=0; g<m.length; g++) {
n += " <select id=\"mySelect\" onchange=\"myFunction()\">";
n += " <option> - Select Option - </option>";
n += "<option>A</option>";
n += " <option>B</option>";
n += " <option>C</option>";
n += " <option>D</option>";
n += " </select>";
} // end of for loop
document.getElementById("demo").innerHTML = n;
// in between some code
function myFunction() {
var y = document.getElementById("mySelect");
var j = y.selectedIndex;
var b = y.options[j].text;
alert ("Your answer is: " + b);
} // end of myFunction
</script>
<p id="demo"></p>
</body>
执行此代码时,例如if (arrayG.length is 5),然后选择选项在屏幕上显示五次,是完美的,当我们从第一个选择选项循环警报中选择选项时显示完美选择的选项。例如如果我们从第一个选择中选择 C,则警报显示 C,但是当我们从其他四个选择元素中选择选项时,它仍然显示 C,即从第一个选择元素中选择的选项。
我们希望我们的代码显示从通过上述 for 循环生成的不同 5 个选择元素中正确选择的选项。
请求帮助,因为我们已经挖掘了很多答案。
【问题讨论】:
-
ID 必须在 HTML 文档中是唯一的。
-
“请求帮助,因为我们已经挖掘了很多答案。” - 建议你先“挖掘”一些基础知识,然后学习一些初学者的教程或类似的东西。
-
感谢您的 cmets,是的,我是初学者。我们可以请求教程在哪里可以找到解决这个问题的方法。我已经尝试在 for 循环中使用唯一 id 和 value。
-
尝试了 "+i+" 的值以获得函数和 html 文档中的唯一值,但仍然没有达到预期的结果
-
onchange="foo(this)",function foo(element) { ... }#LookMaNoIds
标签: javascript jquery json ajax dom-events