帮忙改段JS```谢谢啦...

Nick_y 2008-03-22 11:24:14
这段JS主要实现了在树中选中一个子节点父节点不选中,当子节点全部被选中时父节点才选中.我现在希望改成选中一个子节点时父节点也选中,子节点一个未选中时父节点也是未选中.我JS很烂帮忙改下...

function yy_stv_foreachParentCheckbox(obj)
{
var checkedNum = 0;
var uncheckedNum = 0;

if (obj.tagName == "INPUT" && obj.type == "checkbox")
{
do
{
obj = obj.parentNode;
}
while (obj.tagName != "TABLE")
}

var tables = obj.parentNode.getElementsByTagName("TABLE");

if (typeof(tables) == 'undefined') return;

for (var i=0; i < tables.length; i++)
{
for (var x=0; x < tables[i].rows.length; x++)
{
for (var j=0; j < tables[i].rows[x].cells.length; j++)
{
var chk = tables[i].rows[x].cells[j].childNodes[0];
if (typeof(chk) != 'undefined' && chk.tagName == "INPUT" && chk.type == "checkbox")
{
if (chk.checked)
checkedNum ++;
else
uncheckedNum ++;
}
}
}
}

if (uncheckedNum == 0)
{
yy_stv_checkParentCheckbox(obj, true);
}
else
{
yy_stv_checkParentCheckbox(obj, false);
}
}
...全文
48 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Nick_y 2008-03-23
  • 打赏
  • 举报
回复
呵呵`OK了`谢谢啦...
hookee 2008-03-23
  • 打赏
  • 举报
回复
if (checkedNum == 0)这个也改了呀
Nick_y 2008-03-22
  • 打赏
  • 举报
回复
之前我也是只改了TRUE,FALSE```可是出现的情况是`当子节点全部选中时父节点就变为未选中,当子节点一个未选中时,
父节点还是选中.
hookee 2008-03-22
  • 打赏
  • 举报
回复

function yy_stv_foreachParentCheckbox(obj)
{
var checkedNum = 0;
var uncheckedNum = 0;

if (obj.tagName == "INPUT" && obj.type == "checkbox")
{
do
{
obj = obj.parentNode;
}
while (obj.tagName != "TABLE")
}

var tables = obj.parentNode.getElementsByTagName("TABLE");

if (typeof(tables) == 'undefined') return;

for (var i=0; i < tables.length; i++)
{
for (var x=0; x < tables[i].rows.length; x++)
{
for (var j=0; j < tables[i].rows[x].cells.length; j++)
{
var chk = tables[i].rows[x].cells[j].childNodes[0];
if (typeof(chk) != 'undefined' && chk.tagName == "INPUT" && chk.type == "checkbox")
{
if (chk.checked)
checkedNum ++;
else
uncheckedNum ++;
}
}
}
}

if (checkedNum == 0)
{
yy_stv_checkParentCheckbox(obj, false);
}
else
{
yy_stv_checkParentCheckbox(obj, true);
}
}
最新演示地址    http://www.521360.com  网站采用114啦内核,99%仿360安全网址,版面清晰简洁,首页代码精简,生成首页HTML为44KB。  天气、手机充值、点卡均调用360官方,邮箱可以正常登录(个别有限制),增加滚动实时新闻,突出网上购物版块。 首页网址、内页网址、广告、实用工具均为调用系统标签,实现所有网址通过后台即可任意修改,无需再登录FTP。 ★★★★重大更新★★★★ 全站网址数据最新更新,确保无任何 非法网站、无法打开网站、强制性广告网站,数据大小1.82M。 结合 265、114la、hao123、2345四大名站,取其精华去其糟粕,加入少量珍藏网站,打开首页就能感觉到耳目一新了。  附带: PSD  logo 源文件,改个logo就上线,简单方便! Ps:本站美工修改不会用PS修改gif透明图,如有高手请进群指点,谢谢!!  附带: linux win 主机对应301 重定向文件,全站优化,全新数据,让贵站在千篇一律的导航站中脱颖而出,成为经典!                                安装方法:     1.上传安装程序到空间,空间需支持PHP,MYSQL数据库。(建议 web 100M mysql 20M 双线全能空间)     2.访问 http://网址/install 执行安装,按照提示填入mysql数据库信息。     3.安装时默认设置后台管理  http://网址/admin 用户:admin 密码:521360 (以防安装出错建议默认安装,然后登陆后台修改密码)     4.登陆后台点击生成全站即可访问。    修改方法    1. ★★★★请把 360jsvisit.js  涉及到  www.521360.com 域名的地方对应修改为你使用的域名    ★★★★切忌必改★★★★    2.主页搜索联盟ID修改 360jsvisit.js  内页搜索联盟ID在后台分页主体修改。(有联盟ID的对应修改即可,没有的请勿乱改,否则会造成首页JS错误)    3.首页包括淘宝客和联盟广告,请在后台对应修改即可。    4.重装时请复制install文件夹至根目录执行重装。    5.其他修改不懂的朋友请到群内咨询客服。                   AD: 另外本版本还需js优化,懂JS的朋友希望进群指点,帮忙JS文件多余的东西删除掉,这样首页就更快了! 360导航网QQ交流群:   87978289       ★★★★版本不断创新,本群第一时间首发★★★★

87,997

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧