为了账号安全,请及时绑定邮箱和手机立即绑定

为什么我找的函数闭包不管用 ?

为什么我找的函数闭包不管用 ?

米脂 2023-03-12 17:13:17
<jsp:useBean id="db" class="Bean.DBBean" scope="page" /><%String a="select * from video";ResultSet rs=db.executeQuery(a);int num=0;ArrayList<String> arraylist=new ArrayList<String>();while (rs.next()){arraylist.add(rs.getString(3));num++;}rs.first();%><script language=javascript>var divId=1;//动态生成单纯的divfunction CreateOuterDiv(){<%int number=0;%>for (loop=0;loop<"<%=num%>";loop++){var obj=document.createElement("div");obj.id="myDiv"+divId;divId++;obj.style.border="1px solid #000000";obj.style.height="200px";obj.style.width="100%";obj.style.filter="alpha(opacity=70)";obj.style.margin="10px";obj.style.cursor="hand";obj.algin="center";//obj.addEventListener('click',ClickTest);//document.getElementById(obj.id).onclick=ClickTest();//obj.setAttribute("onclick","ClickTest()")(function () {var url='<%=arraylist.get(++number)%>';//加单引号!obj.onclick=function () {top.location='danmu.jsp'+'?'+url;}})();//obj.onclick=ClickTest(url);document.body.appendChild(obj);}}function ClickTest(url) {return function(){top.location='danmu.jsp'+'?'+url;}}</script>
查看完整描述

1 回答

?
慕斯709654

TA贡献1840条经验 获得超5个赞

测试过,可以添加DIV,点击事件也可以触发。一切正常。
你的代码中没有调用CreateOuterDiv函数。不调用怎么执行你的动态添加DIV的代码呢?
把函数CreateOuterDiv添加到body的load事件

查看完整回答
反对 回复 2023-03-15
  • 1 回答
  • 0 关注
  • 130 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号