我有以下内容:
var inf = { PID: pid, PDate: pdate};
然后我调用了函数
SetVal(inf);
function SetVal(inf) {
alert(inf.PID);
- 以上工作正常。我显示警告正常
但是,如果我有一个超链接调用SetVal它不起作用:
valset = '<li><a href=\'javascript:SetVal(' + inf + ');\' ><h3> ' + this.PID + '</h3><p>'
$('#DataSet).html(valset);
当我点击超链接时,我在FireBug中收到以下消息:
元素列表后缺少]
不确定如何解决它。我以为他们会是同一个人。
答案 0 :(得分:2)
您的变量“inf”是一个对象,但是您在构建该元素时尝试将其视为字符串。用jQuery做它会好得多:
$('#DataSet').html($('<li/>')
.append($('<a/>', {
href: function() { SetVal(inf); },
}))
// ...