100分求一个javascript语句

问题描述

树形列表,采用递归来取数据,选择父亲目录的checkbox,同时也要选择其所有的下属的子孙目录代码如下:红色部分为增加的代码,谢谢了publicstaticStringshowGroupTree(GroupcurrentGroup,IteratoriterGroup,intlayer,longselectedGroupID,Stringurl){IteratoriterChildGroup=GroupManager.getChildNoDel(currentGroup);if(iterChildGroup==null)return"";StringBuffersbuf=newStringBuffer();GroupchildGroup=null;Groupgroup=null;StringgroupName="";if(iterGroup.hasNext())childGroup=(Group)iterGroup.next();while(iterChildGroup.hasNext()){group=(Group)iterChildGroup.next();sbuf.append("<tablewidth="95%"border="0"align="center"cellpadding="0"cellspacing="0">");sbuf.append("<tr>");for(inti=0;i<layer;i++)sbuf.append("<tdwidth='1%'><imgsrc='images/blank.gif'width='12'height='5'border='0'></td>");sbuf.append("<tdwidth='1%'><inputtype='checkbox'></td>");if(selectedGroupID==group.getId())sbuf.append("<tdwidth='").append((100-layer)).append("%'align='left'>");elsesbuf.append("<tdwidth='").append((100-layer)).append("%'align='left'>");groupName=group.getName();if(groupName.length()>14)groupName=groupName.substring(0,14)+"…";if(group.getLayer()<8)sbuf.append("<aname="").append(group.getId()).append(""></a>").append(group.isHasChild()?"<imgsrc='../images/indexleft_03.gif'>&nbsp;":"&nbsp;").append("<ahref='").append(url).append("?groupID=").append(group.getId())./*append("#").append(group.getId()).*/append("'class='CCS_tree'>").append(groupName).append("</a>");elsesbuf.append(/*group.isHasChild()?"1":"2"+*/group.getName());sbuf.append("</td>");sbuf.append("</tr>");sbuf.append("</table>");if(childGroup!=null&&group.getId()==childGroup.getId())sbuf.append(showGroupTree(childGroup,iterGroup,layer+1,selectedGroupID,url));}returnsbuf.toString();}

解决方案

解决方案二:
没看明白。。。
解决方案三:
父checkbox的子目录的的name=“相同”<scripttype="text/javascript">vararry=document.getElementsByName("相同");for(vari=0;i<arry.length;i++){arry[i].checked=true;//不打勾arry[i].checked=false;}</script>LZ的代码太多了自己在JAVA代码里加吧
解决方案四:
这是客户端业务逻辑,最好用javascript来写,服务器端生成所需的数据即可。下面是我写的,把数据部分替换成相应的服务器端代码即可:<html><head><scripttype="text/javascript">vardata=[{name:"中国",children:[{name:"北京",children:[{name:"宣武区"},{name:"崇文区"}]},{name:"上海",children:[{name:"宝山区"},{name:"黄浦区"},{name:"静安区"},{name:"卢湾区"}]}]}];functionshowSelectTree(domObj,d,parent){for(vari=0;i<d.length;i++){varcheckboxWrapper=document.createElement("div");checkboxWrapper.className="tree_node";varcheckbox=document.createElement("input");checkbox.type="checkbox";checkbox.onclick=selectChildren;checkbox.chldrn=[];checkboxWrapper.appendChild(checkbox);varcheckboxLabel=document.createElement("span");checkboxLabel.innerHTML=d[i].name;checkboxWrapper.appendChild(checkboxLabel);domObj.appendChild(checkboxWrapper);if(parent&&parent.chldrn)parent.chldrn.push(checkbox);if(d[i].children)showSelectTree(checkboxWrapper,d[i].children,checkbox);}}functionselectChildren(){if(this.chldrn){for(vari=0;i<this.chldrn.length;i++){if(this.chldrn[i].type=="checkbox"){this.chldrn[i].checked=this.checked;this.chldrn[i].onclick();}}}}</script><styletype="text/css">.tree_node{display:block;padding-left:10px;}</style></head><bodyonload="showSelectTree(document.getElementById('tree'),data);"><divid="tree"></div></body></html>

解决方案五:
大家帮帮忙,我现在可以取得每个部门的层级以及部门ID,就是不知道怎么用递归写这个javascript方法,楼上的先谢谢了,我把我的代码贴出来,大家帮我看看啊,很急的,先谢谢了。。。
解决方案六:
publicstaticStringshowGroupTree(GroupcurrentGroup,IteratoriterGroup,intlayer,longselectedGroupID,Stringurl){IteratoriterChildGroup=GroupManager.getChildNoDel(currentGroup);if(iterChildGroup==null)return"";StringBuffersbuf=newStringBuffer();GroupchildGroup=null;Groupgroup=null;StringgroupName="";if(iterGroup.hasNext())childGroup=(Group)iterGroup.next();while(iterChildGroup.hasNext()){group=(Group)iterChildGroup.next();sbuf.append("<tablewidth="95%"border="0"align="center"cellpadding="0"cellspacing="0">");sbuf.append("<tr>");for(inti=0;i<layer;i++)sbuf.append("<tdwidth='1%'><imgsrc='images/blank.gif'width='12'height='5'border='0'></td>");sbuf.append("<tdwidth='1%'><inputtype='checkbox'name='check_").append(layer).append("_").append(group.getId()).append("'onclick='javascript:allSelect(this.value,").append(layer).append(")'value='").append(group.getId()).append("'></td>");if(selectedGroupID==group.getId())sbuf.append("<tdwidth='").append((100-layer)).append("%'align='left'>");elsesbuf.append("<tdwidth='").append((100-layer)).append("%'align='left'>");groupName=group.getName();if(groupName.length()>14)groupName=groupName.substring(0,14)+"…";if(group.getLayer()<8)sbuf.append("<aname="").append(group.getId()).append(""></a>").append(group.isHasChild()?"<imgsrc='../images/indexleft_03.gif'>&nbsp;":"&nbsp;").append("<ahref='").append(url).append("?groupID=").append(group.getId())./*append("#").append(group.getId()).*/append("'class='CCS_tree'>").append(groupName).append("</a>");elsesbuf.append(/*group.isHasChild()?"1":"2"+*/group.getName());sbuf.append("</td>");sbuf.append("</tr>");sbuf.append("</table>");if(childGroup!=null&&group.getId()==childGroup.getId())sbuf.append(showGroupTree(childGroup,iterGroup,layer+1,selectedGroupID,url));}returnsbuf.toString();}
解决方案七:
functionallSelect(obj,num){}
解决方案八:
应楼主要求重写的,贴下边儿:<scripttype="text/javascript">//initializerelationsfunctioninitRelations(){//getallcheckboxesvarallInputs=document.getElementsByTagName("input");varallCheckBoxes=[];for(vari=0;i<allInputs.length;i++)if(allInputs[i].type=="checkbox"&&allInputs[i].id.indexOf("check_")>-1){allInputs[i].dbId=allInputs[i].id.split('_')[2];allInputs[i].chldrn=[];allCheckBoxes.push(allInputs[i]);}//findchildrenforeachcheckboxfor(vari=0;i<allCheckBoxes.length;i++)for(varj=0;j<allCheckBoxes.length;j++)if(allCheckBoxes[j]!=allCheckBoxes[i]&&allCheckBoxes[j].id.indexOf(allCheckBoxes[i].dbId)>-1)allCheckBoxes[i].chldrn.push(allCheckBoxes[j]);//setclickactionforeachcheckboxfor(vari=0;i<allCheckBoxes.length;i++)allCheckBoxes[i].onclick=updateChildren;}functionupdateChildren(){for(vari=0;i<this.chldrn.length;i++){this.chldrn[i].checked=this.checked;this.chldrn[i].onclick();}}window.onload=initRelations;</script><div><inputtype="checkbox"id="check_1_10051242"name="check_1_10051242">综合部</div><div>&nbsp;&nbsp;<inputtype="checkbox"id="check_2_10051229_10051242"name="check_2_10051229">test</div><div>&nbsp;&nbsp;&nbsp;&nbsp;<inputtype="checkbox"id="check_3_10051236_10051229"name="check_3_10051236">test</div>

解决方案九:
收藏
解决方案十:
支持,顶下七楼
解决方案十一:
学习中
解决方案十二:
学习中…………
解决方案十三:
学习下子..代码好长慢慢看下!
解决方案十四:
不懂

时间: 2025-01-20 15:14:18

100分求一个javascript语句的相关文章

100分求一个随机数生成算法

问题描述 500000元分给1000000个人,每个人分0.18到88元,正好分完.请问如何使用算法实现? 解决方案 解决方案二:decimalsumMoney=500000m;//总金额intremainPerson=1000000;Dictionary<string,decimal>dicResult=newDictionary<string,decimal>();//存储分配结果voidPenny(){decimalmoney=0m;//每人分到的金额for(inti=0;i

100分求一个解决方法,救命,在线急等!

问题描述 我昨天下了一个DXperience-7.2.5.exe但是一直都不能用,我求一个破解的方法,哪位大哥,能给我一个答案呢,再线等我是从这个页面下载的http://www.devexpress.com/Downloads/NET/DXperience/ 解决方案 解决方案二:7.2.1的完全有破解的.......我看功能差别也不会很大!解决方案三:能不能给一个详细点的下载地址呢.还有破解方法!解决方案四:http://download.csdn.net/source/269333http:

100分求一个C++编写的简单UDP协议的SOCKET程序和源代码,基本功能就是能不断的发数字“21”

问题描述 具体要求,写一个服务器端的发送数据程序(UDP协议的SOCKET),要求能不断的广发21这个数字,要求能让我的客户端(这个SOCKET的客户端我已经有了)连上你的程序所listen的端口来接收这个你发送的数字21,要求程序尽量简单源代码尽量易读易懂.程序和代码都请用C++来写,谢谢了先.. 解决方案 解决方案二:小鸟也不会帮你顶一下解决方案三:tcpudp?解决方案四:#include<stdio.h>#include"winsock2.h"voidmain(){

100分求一个合适公司的 BBS的ASP.net源代码

问题描述 如题 解决方案 解决方案二:网上搜!!解决方案三:上面去找解决方案四:都找了没合适的,用了下动网的论坛,也不行.全是动网的广告...........解决方案五:说一下你们公司需要什么样子的.不说谁知道.怎末帮助你解决方案六:免费的肯定是带有人家自己的广告的,需要真正符合你需求的没有,肯定需要修改的解决方案七:只要一般的功能就ok了..解决方案八:简单的说:老板想弄个论坛玩玩,功能不需要很多要求,但看上去也要象个公司论坛的样子..解决方案九:引用5楼huing的回复: 免费的肯定是带有人

求一个insert语句?难难难!!!解出以所有的分相送。。

问题描述 问题是:我有一个insert语句,比如说这样:insertintotable1(a,b,c,.....)values('"+a[0]+"','"+a[1]+"','"+a[2]+"',.......)如果a[0]a[1]a[2]......有等于0的..就让它为空..我是不想数据库的记录中有0,记录是0我就放空..这样怎么实现... 解决方案 解决方案二:自己顶下,,,UP...解决方案三:for(i=0;i<100;i++){i

[100分]求ms ajax中关于js 调用服务端代码的方法

问题描述 以前用AjaxPro好像很容易,但换成MsAjax后不知该怎么做.要能实现异步回传的,就是在页面中使用了UpdatePanel控件.我提问一般都是给100分的.知道的快来吧. 解决方案 解决方案二:没用过.解决方案三:该回复于2008-04-10 08:33:57被版主删除解决方案四:没用过.解决方案五:该回复于2008-04-10 08:33:55被版主删除解决方案六:我现在正在学一本书叫asp.netajax程序设计第II卷microsoftajaxlibrary异步通信层是陈黎夫

100分求汉语词组大全啊

问题描述 有个项目需要汉语词组大全,不知道哪位手头有这样的库呢?如果有的话,麻烦给一份yuanchuan2001@sina.com十分感谢,100分奉上 解决方案 解决方案二:jf解决方案三:顶顶,继续求-感谢哪位给一份解决方案四:帮楼主顶解决方案五:继续求--解决方案六:jf这个不是分能求来的解决方案七:痛苦,不知道如何能获得呢??

100分求C#和C++都能够加解密的代码

问题描述 我有一个DLL是用VC写的DES加密,但是用VC的DES加密后的密文用C#解密不了,因此很郁闷,只能把C++的DLL放到服务器上让C#来调,这样勉强解决,但后来又用的是免费空间了,人家不让用VC的DLL了,顺便说一下用的是常来网的免费空间http://web.99081.com/sysweb/RegTrans.aspx?CodeProvider=ymfhcn支持ASP.NET2.0,我本地调用VC的DLL是正常的,但在免费空间里就不行,因此求一个解决方案,让C++和c#都能够正常加解密

100分求一句Oracle中的语句,解决马上给分,谢谢,比较急

问题描述 select贷方,余额fromAAA 查询结果如下:贷方余额0.0050000.008000.0042000.00其中"50000.00"和"8000"是查出来的,"42000.00"是根据:-1*贷方+上一行的余额算出来的,可我不知道语句该怎么写,求指教.号没分了,开个马甲问下,谢谢,解决马上给分 解决方案 解决方案二:是加吗?按照上面的说来,应该是减的吧另外你这是查询一个总的结果是吗?解决方案三:算法我已经给出来了,你自己看啊-1*