当试图枚举数据对象的值时,它为其所有属性提供undefined值,但是获取没有枚举的值会给出字符串数据的值(工作)......
创建jstree节点,没有任何问题......
$("#treeFile1").jstree("create", null, "outside", { "attr" : { "rel" : "folder" }});
听取上面的事件
$("#treeFile1").bind("create.jstree", function(event,data)
{
alert(data.args.toSource()); // gives a string output not defined
alert(data.inst.toSource());
for(var prop in data)
{
alert("Property name is: "+ prop + " property value is: "+ data.prop);
// gives each value as undefined, why is this?
}
event.stopImmediatePropagation();
答案 0 :(得分:4)
因为您需要使用bracket notation代替dot notation来使用prop
的值作为访问的媒体资源名称:
alert("Property name is: "+ prop + " property value is: "+ data[prop]);
MDN的文档提供了a solid for...in
example。