2

这应该很简单,但我在这个问题上疯了。基本上我想要做的是在页面上显示之前从返回的 HTML 数据中替换一些标签。例如:

$.ajax({
    url: url,
    cache: false,
    type: 'GET',
    success: function(data) {
        // Here i need to replace href in ALL <a> tags and add the onclick attrib with the contents from the href 
        $('#floaty-dialog').html(modifieddata);
    }
});

如何预处理 HTML 数据并将所有 href 属性替换为 # 并将 onclick 属性添加到相同的链接?

4

1 回答 1

1

我会使用浏览器的 HTML 解析器为我完成这项工作:

var dom = $(data);
dom.find("a").each(function() {
  var href = this.href;
  $(this).click(function(e) {
    e.preventDefault();
    alert(href);
  });
}).attr("href", "#");

$('#floaty-dialog').html(dom);
于 2012-11-09T16:22:00.107 回答