在jsp中如何使用js获取<% %>动态添加的标签对象?

<%out.print("<divname=\"divPro\">");out.print("</div>");out.print("<divname=\"divPro\... <%
out.print("<div name=\"divPro\">");
out.print("</div>");
out.print("<div name=\"divPro\">");
out.print("</div>");

out.print("<div name=\"divPro\">");
out.print("</div>");

out.print("<div name=\"divPro\">");
out.print("</div>");

%>
<script type="text/javascript">
function show(){
var names = document.getElementsByName("divPro");
alert(names);//显示object说明确实取得对象了
alert(names.length);//这里却显示0说明names数组中没有元素
}
</script>

请问这是怎么回事,还请高手帮忙解决!
一楼的很感谢你的回答,但是你并没有回答我所要的答案。。。是我没写清楚,是我的错!现在补充一点:页面中有很多很多的代码,以上所给出的只是众多代码中的一小块,直接用document.getElementsByName("divPro"); 来获取根本就得不到name="divPro"的DIV对象!(如果页面中只有这一点代码是完全有作用的)
需要回答的问题是:
1.为什么页面中只有这一点代码时document.getElementsByName("divPro");是有作用的,可以获取对象,而代码多了之后会失效!
2.用什么方法解决 1 中的问题?

附上:现在我虽然用其他方法解决了此问题,但是很繁琐,所以希望大家能够提供点最有效最简洁的方法!
展开
 我来答
valibo
推荐于2016-09-07 · TA获得超过377个赞
知道小有建树答主
回答量:595
采纳率:0%
帮助的人:499万
展开全部
我们访问一个jsp页面时,运行简单示意图如下

先执行jsp程序 --- 》再执行HTML 和 JavaScript

我看一下程序

<%
out.print("<div name=\"divPro\">");
out.print("</div>");
out.print("<div name=\"divPro\">");
out.print("</div>");

out.print("<div name=\"divPro\">");
out.print("</div>");

out.print("<div name=\"divPro\">");
out.print("</div>");

%>
这一段执行之后 页面中多了 4行代码
<div name="divPro"></div>
<div name="divPro"></div>
<div name="divPro"></div>
<div name="divPro"></div>
<script type="text/javascript">
function show(){
var names = document.getElementsByName("divPro");
alert(names);//显示object说明确实取得对象了
alert(names.length);//这里却显示0说明names数组中没有元素
}
</script>

这个时候 那就相当于 html+JavaScript 的交互了

这个不难了吧
紫文6L
2015-11-04
知道答主
回答量:51
采纳率:0%
帮助的人:14.5万
展开全部

jsp页面中任何位置都可以使用<%%>来获取对象的,如果你要把这个对象的值赋给js中的变量的话 只需要

var data = "<%= data%>"

;就可以了。在以上取值之前定义data

<%String data = StringUtils.EMPTY%>

类似这样就OK了吧

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式