You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JSP锚点标签内调用List.get(i)取值返回undefined原因排查

问题根因及修复方案

核心错误点

  • 函数名不匹配:点击事件中调用的函数名为openWindow(),但实际定义的函数名为OpenHierarchyWindow(),名称、大小写均不一致,函数本身无法被正常触发。
  • 字符串参数未加引号:服务端渲染<%=list.get(i)%>后,生成的前端代码为openWindow(Abc),JS会将Abc识别为未定义的变量,而非字符串常量,因此无法拿到正确的参数值。
  • 错误调用value属性:传入函数的参数本身就是字符串类型,不存在value属性,直接输出参数即可,不需要追加.value。
  • Java代码与HTML混写格式错误:原有循环代码没有正确分隔Java逻辑和HTML内容,会导致页面解析失败,标签属性无法正常渲染。

修复后代码

JSP循环部分

for (int i = 0; i < list.size(); i++) {
%>
  <a id="<%=list.get(i)%>" href="javascript:;" onClick="OpenHierarchyWindow('<%=list.get(i)%>');" align="left">Proceed</a>
<%
}

JS函数部分

function OpenHierarchyWindow(id) {
  alert("id value "+id);
}

内容的提问来源于stack exchange,提问作者Styne J

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 00:06:03