0

我有以下内容:

     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 中收到以下消息:

元素列表后缺少]

不知道如何解决它。我以为他们会是同一个。

4

1 回答 1

2

您的变量“inf”是一个对象,但您在构建该元素时试图将其视为字符串。你最好用 jQuery 来做:

$('#DataSet').html($('<li/>')
  .append($('<a/>', {
    href: function() { SetVal(inf); },
  }))
  // ...
于 2012-04-06T14:14:32.570 回答