【问题标题】:How to get value in Javascript while looping in jsp如何在jsp中循环时在Javascript中获取价值
【发布时间】:2012-01-04 10:09:26
【问题描述】:

我有以下 JSP 代码:

<c:forEach items="${requestScope.XX}" var="x">
   <tr>
      <td><input type="radio" value="${x.xID}" name="x"></td>
      <td>&nbsp;${x.name}</td>
   </tr>    
</c:forEach>

每当用户点击单选按钮时,我都需要同时使用 x.xID 和 'x.name' 并在 Javascript 中进行验证。

如何将选定的值传递给 Javascript?

我尝试使用 onClick 函数,但该值未传递给 Javascript。

function validate(y) {
   alert(y.value);
}

【问题讨论】:

  • 向我们展示您的 java 脚本代码
  • 你可以使用 document.getElementsByName() 方法。

标签: javascript jsp jstl


【解决方案1】:

我猜您对服务器端 (JSP) 和客户端 (JavaScript) 代码执行有点困惑,但无论如何:

<input type="radio" value="${x.xID}" name="x" onclick="validate('${x.xID}','${x.name}')" />

编辑:为防错添加了单引号。

编辑 2: 正如我猜想的那样,您对 JavaScript 的执行位置有点困惑:它在客户端上运行,而您在 JSP 中拥有的对象不存在,因此y.valuevalidate() 中毫无意义。你的函数应该是这样的:

function validate(id, name) { alert('id: ' + id + ', name: ' + name); }

【讨论】:

  • 是的,但是 onclick 不起作用。我为我的代码添加了简单的 javascipt。
  • @freepublicview 尝试使用onclick="alert('${x.xID}, ${x.name}')",如果可行,则说明您的验证功能有问题,如果没有发布 HTML 输出。
  • 感谢您的帮助。是的,我有些困惑,谢谢解决
猜你喜欢
  • 1970-01-01
  • 2020-11-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-05
相关资源
最近更新 更多