从数据库和onclick项目之间的链接



我的应用使用cordova3.4,我显示来自数据库的用户列表,比如user1, user2和user3我想,如果点击user1然后显示user1信息。如果单击user2,则显示user2信息。如果单击user3,则显示user3信息。

我有for循环显示三个用户,如何在onClick事件和用户Id之间链接。

function querySuccess(tx, results) {
var len = results.rows.length;
for (var i=0; i<len; i++){        
var userId = results.rows.item(i).user_id;
var div1 = document.createElement("div");
div1.setAttribute('class', 'left');
var a1 = document.createElement("a");
a1.setAttribute('onClick', "showUserProfile(userId)");
....
....
}
}
function showUserProfile(userId)
{
alert("user Id: " +userId);
}

为什么要用javascript创建div呢,直接用jquery

    var html="";
    for (var i=0; i<len; i++){        
    var userId = results.rows.item(i).user_id;
    html+="<div class='left' onclick='showUserProfile("+userId+")'></div>"

    }
    $("#id").append(html);//  where you append this element 

现在写function

function showUserProfile(userId)
{
alert("user Id: " +userId);
}

ref

问题可能是userId实际上并没有在这里传递:

a1.setAttribute('onClick', "showUserProfile(userId)");

你应该修改这一行类似于其他答案显示,但这里是没有jQuery添加:

a1.setAttribute('onClick', "showUserProfile(" + userId + ")");

最新更新