我有一个关于如何动态访问模型属性列表中的索引的问题。 在我的代码中,我有一些javascript正在从模型中读取值。该模型具有可能是列表的属性。
document.getElementById("phoneNumberRPhone").value = "${model.people[index].phoneNumber.number}";
在这里,你可以看到我试图将javascript值设置为从我可以拥有多个人的模型中检索到的数字。索引是我的动态价值。如果我特别声明model.people [0]或model.people [1],它可以正常工作,但是如果我尝试设置一个数字来索引并动态使用索引,它就不再有用了。
我将非常感谢任何人可以提供的任何帮助。我确定这只是用户错误或语法使用不当的问题。
答案 0 :(得分:2)
在JSP / EL必须打印那段JS代码时,JSP / EL范围内根本不存在${index}
。例如,这只会影响您的工作(尽管这种方法非常值得怀疑):
<c:forEach items="${model.people}" varStatus="loop">
document.getElementById("phoneNumberRPhone").value = "${model.people[loop.index].phoneNumber.number}";
</c:forEach>
请记住,JSP只是一个HTML代码生成器,JavaScript就是其中的一部分。 JSP和JavaScript不同步运行。右键单击webbrowser中的页面并执行查看源以查看它。