jQuery - 如何通过ajax加载父元素和内容

时间:2014-05-23 12:01:42

标签: jquery

以下jQuery代码将通过id选择器#menu在外部页面中搜索内容。但是它不会拉出包装内容的父元素,而只会提取内容本身......

...
var menus = 'jqmenus/menus.htm';
$.ajax({
      url: menus,
      dataType: 'html',
      success: function(data) {
        var $data = $(data);
        var data_topmenu = $data.filter("#menu").html();
      }
 });
 ...

如何提取内容和包装内容的完整元素?

谢谢!

2 个答案:

答案 0 :(得分:1)

使用JavaScript' outerHTML

var data_topmenu = $data.filter("#menu")[0].outerHTML;

由于id选择器总是返回单个元素,因此您不必担心元素2,3等等。

答案 1 :(得分:1)

我认为你需要element.outerHTML docs @ MDN

改变这个:

var data_topmenu = $data.filter("#menu").html(); // this gets you the innerHTML

到此:

var data_topmenu = $data.filter("#menu")[0].outerHTML;
// for target element html with content inside you need to use outerHTML