如果xml是某个xml文件的内容,则以下代码可以正常工作: 它找到了“事件”#39;元素并警告其子元素的内容(名称+ loc)的串联。
$(xml).find('event').each(function(){
var name = $(this).find("name").text();
var loc =$(this).find("loc").text();
alert(name + loc);
});
我想单独定义适用于每个事件元素的函数。 这样的事情,但这是一个错误的方式:
$(xml).find('event').each(procNode(this));
function procNode(this){
var name = $(this).find("name").text();
var loc =$(this).find("loc").text();
alert(name + loc);
}
我怎样才能以正确的方式做到这一点? 不幸的是,我从谷歌获得的.each()的所有例子都在.each()中定义了函数。
答案 0 :(得分:2)
您无需明确地将this
引用传递给该函数。
尝试,
$(xml).find('event').each(procNode);
function procNode(){
var name = $(this).find("name").text();
var loc =$(this).find("loc").text();
alert(name + loc);
}
顺便提一下,在.each()
函数调用中调用该函数,只需要传递该函数的reference
。