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 如何替换<;对象…>;与该对象的实际内容有关?_Jquery_Ajax_Asynchronous - Fatal编程技术网

Jquery 如何替换<;对象…>;与该对象的实际内容有关?

Jquery 如何替换<;对象…>;与该对象的实际内容有关?,jquery,ajax,asynchronous,Jquery,Ajax,Asynchronous,假设我有: <object class="MyClass" type="text/html" data="/Whatever/1?renderpartial=1"></object> <object class="MyClass" type="text/html" data="/Whatever/2?renderpartial=1"></object> 我想使用jQuery将对象替换为对象的实际HTML <script type="te

假设我有:

<object class="MyClass" type="text/html" data="/Whatever/1?renderpartial=1"></object>
<object class="MyClass" type="text/html" data="/Whatever/2?renderpartial=1"></object>

我想使用jQuery将对象替换为对象的实际HTML

<script type="text/javascript">
    $(document).ready(function() {
        $(".MyClass").before('<div class="MyClass">#CONTENT#</div>').remove();
    });
</script>

$(文档).ready(函数(){
$(“.MyClass”)。在(“#内容”)之前。删除();
});
我想发出一个异步请求,从服务器获取“/whater/1”和“/whater/2”,并将其放在“#CONTENT”的位置

这可能吗?

您可以使用:

$(“.MyClass”)。每个(函数(){
$(this.replace(“”).load($(this.attr(“数据”));
});

要将原始对象替换为div:

$(function(){
    $('.MyClass').each(function(){
        var $current = $(this);
        $.post($current.attr('data'), function(data){
            $current.replaceWith('<div>' + data + '</div>');
        })
    });
});
$(函数(){
$('.MyClass')。每个(函数(){
变量$current=$(本);
$.post($current.attr('data')、函数(data){
$current.replacement(“”+数据+“”);
})
});
});

+1:好的,看起来不错,但是我想把对象变成一个DIV,然后用原始对象的URL加载DIV。这可以干净地完成吗?嗯,这基本上是可行的,但是我的jquery版本中似乎有一个bug,它阻止了replaceWith的正确执行。。。HTML被抓取得很好,但是。。。错误是
error:(此[0]。ownerDocument | |此[0])。createDocumentFragment不是函数
Ok,这是我的范围错误。我更新了我的示例,所以请使用更新的代码再试一次。
$(function(){
    $('.MyClass').each(function(){
        var $current = $(this);
        $.post($current.attr('data'), function(data){
            $current.replaceWith('<div>' + data + '</div>');
        })
    });
});