每个()循环中的JQuery onclick属性未定义

时间:2014-04-10 23:39:53

标签: javascript jquery

请原谅我糟糕的编码风格。我正在学习编写Chrome扩展程序,无法弄清楚一些JQuery的东西。我试图解析一些包含(动态生成的?)链接的行的文档,HTML代码如下所示:

<div class="row" id="rand">
<div class="display">
    <div class="link">
        <a name="actionLink" href="#" alt="action" onclick="listener.postAction('form', 'http://***/')" class="alink"><span>Confirm</span></a>
    </div>
</div>

我按以下方式获取信息:

$(".row").each(function(index)
{
  var $itemArea = $(this).find(".display");
  var id        = $(this).attr("id"); 
  var alink     = $(this).find(".link").find("a");
  var onclick   = alink.attr("onclick");

  console.log("id=" + id);
  console.log("alink=" + alink);
  console.log("onclick=" + onclick);
});

这是JSBin的输出:

"id=rand"
"alink=[object Object]"
"onclick=listener.postAction('form', 'http://***/')"

但是,当我在Chrome中调试此内容时,我的代码返回的“onclick”值未定义。为了让事情更加混乱,当我检查onclick的{​​{1}}属性时,它会显示正确的值?我究竟做错了什么?

1 个答案:

答案 0 :(得分:0)

请尝试以下操作来获取var

var onclick   = $('.link a:first',this).attr('onclick');