只获取文件的一部分

时间:2009-06-01 22:06:29

标签: jquery

我有一些非常简单的示例代码:

$.ajax({
  url: 'demo2.htm',
  success: function(loadeddata){
    $("#loaded_data").html(loadeddata);
    alert('success');
  },
  error: function(){
    alert('failure');
  }
});

加载的数据当前返回所有内容。我需要的是只获得一个特定的div并使其成为#loaded_data的html。

我该怎么做?

谢谢!

编辑:

尝试使用.load()...

这是我在评论中写的内容。

谢谢,您更新的示例很棒。但是我不确定我的错误。

这:工作

$("#loaded_data").load("demo2.htm #mydiv", function(text, status, request) {
    if(status == 'success') {
        alert('success');
    } else {
        alert('error');
    }
});

这:

$("#loaded_data").load("demo5.htm #mydiv", function(text, status, request) {
    if(status == 'success') {
        alert('success');
    } else {
        alert('error');
    }
});

没有。它只是挂起。没有demo5.htm但是没有返回错误。

再次感谢您的帮助。

2 个答案:

答案 0 :(得分:5)

您可以使用.load()

$("#loaded_data").load("demo2.htm #mydiv", function(text, status, request) {
    if(status == 'success') {
        alert('success');
    } else {
        alert('error');
    }
});

如果这对您不起作用,那么您做错了,我们需要查看更多代码。

以下是使用上述代码获取单个from this pagethis page的示例。

答案 1 :(得分:1)

我已经更新了我的另一个例子,但是我会把它克隆到这个问题中,这个问题可能有问题(没有双关语)......但是,我们有两个问题同样的事情......

检查回复的textStatus

$("#links").load("/Main_Page #jq-p-Getting-Started li", 
  function (responseText, textStatus, XMLHttpRequest) {
    if (textStatus == "success") {
         // all good!
    }
    if (textStatus == "error") {
         // oh noes!
    }
  }

决心解决问题:

成功的一个例子:

http://jsbin.com/ageju

失败的一个例子:

http://jsbin.com/arite