0

我有一个关于如何从模型属性列表动态访问索引的问题。在我的代码中,我有一些 javascript 从模型中读取值。该模型具有一个可能是列表的属性。

document.getElementById("phoneNumberRPhone").value = "${model.people[index].phoneNumber.number}";

在这里,您可以看到我正在尝试将 javascript 值设置为从可以有多个人的模型中检索到的数字。索引是我的动态值。如果我特别声明 model.people[0] 或 model.people[1],它可以正常工作,但是如果我尝试设置一个数字来索引并动态使用索引,它就不再有效。

我将非常感谢任何人对此提供的任何帮助。我确定这只是用户错误或语法使用不当的问题。

4

1 回答 1

2

显然${index}在 JSP/EL 范围内根本不存在 JSP/EL 必须打印那段 JS 代码。例如,它只会对您正在做的事情起作用(尽管这种方法非常值得怀疑):

<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 中右键单击页面并执行View Source以查看它。

于 2012-06-27T17:17:24.933 回答