-3

我正在使用此代码收听 abutton和一些标签:a

$("#pagination_partial a, #order_sorting_partial a, #order_sorting_partial .organize-btn").bind("click", function() {
  $.getScript(this.href);
  history.pushState(null, "", this.href);
  return false;
});

该代码应该从单击的元素中获取href,但到目前为止它只从a标签中获取href。当我单击代码时organize-btn,代码知道该按钮已被单击,但它没有将任何内容分配给@href.

我究竟做错了什么?这是视图文件(HAML):

.row
    .span
        .btn-group
            %button.btn{:href => "/orders?view=#{@organize_mode}", :class => "organize-btn"}= t(".#{@organize_mode}")
            %button.btn.dropdown-toggle{"data-toggle" => "dropdown"}
                %span.caret
            %ul.dropdown-menu
                %li
                    %a{:href => "/orders?view=by_last_dispatch"}= t(".by_last_dispatch")
                %li
                    %a{:href => "/orders?view=by_first_dispatch"}= t(".by_first_dispatch")
4

1 回答 1

1

锚标记的 js 对象形式恰好具有 href 属性,但不要将其与 DOM 标记上的 href 属性混淆。在您的标记中,您正在向按钮添加 href 属性,但这些属性不会像您期望的那样自动添加到 js 对象中。假设您想继续使用名为 href 的属性,我认为这是另一个题外话问题,您将需要从它自己的 DOM 访问该属性。使用 jQuery,你会想this.href$(this).attr("href")

于 2013-09-15T06:43:11.177 回答