html 循环点击事件,for循环中动态创建的html元素的Onclick事件

我有一个类似于数据树的json对象。我想交互式地在UI上显示它。在点击一个组件时,它的孩子应该被显示等等。我写了下面的代码for循环中动态创建的html元素的Onclick事件

var json_data = {

"component": "A",

"status": 0,

"children": [

{

"component": "AA",

"status": 0,

"children": [

{

"component": "AAA",

"status": 0,

"children": []

},

{

"component": "AAB",

"status": 2,

"children": []

}

]

},

{

"component": "AB",

"status": 0,

"children": [

{

"component": "ABA",

"status": 0,

"children": []

},

{

"component": "ABB",

"status": 1,

"children": []

}

]

}

]

};

$(document).ready($(function(){

var $result = $('#result');

start(json_data)

//Root Node display

function start(obj)

{

$('

').text(obj.component + '-'+obj.status).appendTo($result);

$("#"+obj.component).click(function(){

displaychildren(obj);

});

}

Display the children of an element on click by recursion

function displaychildren(node)

{

$.each(node.children,function (i,v){

$('

').text(v.component + '-'+v.status).appendTo($result);

if$("#"+v.component).click(function(){

alert("Problem is here");

displaychildren(v);

});

});

}

});

我面对的问题是displaychildren函数中的onclick函数不起作用。如果onclick条件被删除,所有组件的所有元素都将显示出来。我只想显示所选组件的子项。有谁知道是什么原因造成的问题

2013-04-09

Praneeth

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值