Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 来自ajaxhtml的Body类_Jquery_Ajax - Fatal编程技术网

Jquery 来自ajaxhtml的Body类

Jquery 来自ajaxhtml的Body类,jquery,ajax,Jquery,Ajax,我有这个AJAX函数 type: "GET", url: url, cache: false, dataType: 'html', success: function(data){ }, error: function(){ }, complete: function(){ } }); 当然,“

我有这个AJAX函数

        type: "GET",
            url: url,
            cache: false,
            dataType: 'html',
            success: function(data){

            },
            error: function(){ },
            complete: function(){ }
        });
当然,“数据”用
表示整个文档,但我只想从这个数据变量中获取body元素的类

有人知道怎么做吗?要从检索到的数据中获取body元素的类


非常感谢您的建议。

一种方法是使用jQuery.load

var classes = $('body', data).attr('class');
$( "#b" ).load( "article.html #target" );

上面的代码从article.html获取目标Id,一种方法是使用jQuery.load

$( "#b" ).load( "article.html #target" );

上面的代码从article.html获取目标Id

如果
数据
是字符串,您可以将其解析为html并获取所需的任何内容。例如:

var data = "<div class='test' id='divID'> Hello </div>";

var parsedDiv = $.parseHTML(data);

$(parsedDiv).attr('class'); // returns 'test'
$(parsedDiv).attr('id'); // returns 'divID'
var data=“Hello”;
var parsedDiv=$.parseHTML(数据);
$(parsedDiv).attr('class');//返回“测试”
$(parsedDiv).attr('id');//返回'divID'
编辑我遗漏了
整个数据是html的部分
。您可以跳过解析步骤。直接使用jquery对象。比如:


$('body',data).attr('class')

如果
数据是字符串,则可以将其解析为HTML并获取所需内容。例如:

var data = "<div class='test' id='divID'> Hello </div>";

var parsedDiv = $.parseHTML(data);

$(parsedDiv).attr('class'); // returns 'test'
$(parsedDiv).attr('id'); // returns 'divID'
var data=“Hello”;
var parsedDiv=$.parseHTML(数据);
$(parsedDiv).attr('class');//返回“测试”
$(parsedDiv).attr('id');//返回'divID'
编辑我遗漏了
整个数据是html的部分
。您可以跳过解析步骤。直接使用jquery对象。比如:


$('body',data).attr('class')

您可以在纯JavaScript中执行此操作:

success: function(data){
    var parser = new DOMParser();
    doc = parser.parseFromString(data, "text/html");
    // Your class(es)
    var docClass = doc.body.getAttribute('class');
    // Garbage collection, you don't need this anymore.
    parser = doc = null;
}

您可以在纯JavaScript中执行此操作:

success: function(data){
    var parser = new DOMParser();
    doc = parser.parseFromString(data, "text/html");
    // Your class(es)
    var docClass = doc.body.getAttribute('class');
    // Garbage collection, you don't need this anymore.
    parser = doc = null;
}

非常感谢这工作非常完美:)你认为这项任务对于在wordpress网页上通过ajax加载每个页面来说太复杂了吗?这取决于你在做什么,如果你只是获取类名,那么是的,但是如果你真的在解析内容并加载它,那就好了。非常感谢这工作做得很好:)你认为这项任务对于通过ajax在wordpress网页上加载每个页面来说太复杂了吗?这取决于你在做什么,如果你只是得到类名,那么是的,但是如果你真的在解析内容并加载它,那很好,抱歉,但这只是抛出“未定义”抱歉,但这只是抛出“未定义”对我有效,对我有效