如果我传递变量id
,我已经完成了,但现在我想在点击图像时将name
传递给同一个函数。这是我的代码:
for (var i = 0; i <friend_data.length; i++) {
results += '<div class = "clicker" id = "'+friend_data[i].id+'" onclick="javascript:testId(this.id,'+ friend_data[i].name+')"><img src="https://graph.facebook.com/' + friend_data[i].id + '/picture" height="30" width="30">' + friend_data[i].name + '</div>';
}
和
function testId(id, friend_data[id].name ){
alert(id);
alert(friend_data[i].name);
}
alert(friend_data[i].name);
没有显示,因为它错了。请帮我纠正一下。
请查看onclick
这是传递变量的正确方法吗?
答案 0 :(得分:4)
试试这个
function testId(id, name ){
alert(id);
alert(name);
}
答案 1 :(得分:3)
将循环更改为此
for (var i = 0; i <friend_data.length; i++) {
results += '<div class = "clicker" id = "'+friend_data[i].id+'" onclick="javascript:testId(this.id,'+friend_data[i].name+')"><img src="https://graph.facebook.com/' + friend_data[i].id + '/picture" height="30" width="30">' + friend_data[i].name + '</div>';
}
答案 2 :(得分:2)
您忘记在代码+
中添加'+friend_data[i].name+'
:
for (var i = 0; i <friend_data.length; i++) {
results += '<div class = "clicker" id = "'+friend_data[i].id+'" onclick="javascript:testId(this.id, '+friend_data[i].name+')"><img src="https://graph.facebook.com/' + friend_data[i].id + '/picture" height="30" width="30">' + friend_data[i].name + '</div>';
}
答案 3 :(得分:0)
您的功能应定义为:
function testId(id, name) {
alert(id);
alert(name);
}
name
将在调用函数时取值friend_data[i].name
。
答案 4 :(得分:0)
function testId(id, name ){
alert(id);
alert(name);
}
然后用testId(friend_data[i].id, friend_data[i].name)
或者
function testId(friend){
alert(friend.id);
alert(friend.name);
}
然后用testId(friend_data[i])