Jquery 如果存在外部html,如何包含外部html,否则什么也不做?

Jquery 如果存在外部html,如何包含外部html,否则什么也不做?,jquery,Jquery,我有一个使用jquery的页面,我想检测是否存在外部文件。如果有,我想把它加载到div中,但如果没有,我希望它什么也不做 我正在使用这段代码,它可以加载文件,但是如果外部文件不存在,它将加载404错误页面。我是jquery的新手,非常感谢您的帮助。此外,检查文件的方法需要有rootdomain+,这样代码就可以插入多个站点而无需编辑 $(function() { $('#test').load('/pages/test.html'); }); 任何帮助都将不胜感激。我已经搜索了好几

我有一个使用jquery的页面,我想检测是否存在外部文件。如果有,我想把它加载到div中,但如果没有,我希望它什么也不做

我正在使用这段代码,它可以加载文件,但是如果外部文件不存在,它将加载404错误页面。我是jquery的新手,非常感谢您的帮助。此外,检查文件的方法需要有rootdomain+,这样代码就可以插入多个站点而无需编辑

$(function() {
      $('#test').load('/pages/test.html');
});
任何帮助都将不胜感激。我已经搜索了好几天了,但我找到的唯一的东西是头部检查脚本,如果url无效,它不能选择什么都不做。我很想知道如何自己编写这段简单的代码,但现在我已经不知所措了

Jeri

尝试使用
ajax()
方法,而不是
load()
,并在成功回调中设置
html()

$(function() {
    $.ajax({
        url: "/pages/test.html",
        cache: false,
        dataType: "html",
        success: function(html){
            $('#test').html(html);
        }
    });
});
尝试使用
ajax()
方法而不是
load()
,并在成功回调中设置
html()

$(function() {
    $.ajax({
        url: "/pages/test.html",
        cache: false,
        dataType: "html",
        success: function(html){
            $('#test').html(html);
        }
    });
});
使用Ajax调用:

$.ajax({
  url: '/pages/test.html',
  success: function(data){
      $('#test').html(data);
  },
  statusCode: {404: function() {
    $('#test').html('Unable to retrieve data. Please try again');
  }
});
使用Ajax调用:

$.ajax({
  url: '/pages/test.html',
  success: function(data){
      $('#test').html(data);
  },
  statusCode: {404: function() {
    $('#test').html('Unable to retrieve data. Please try again');
  }
});

我考虑过做类似的事情。我会用Ajax解决这个问题。谷歌搜索产生了其他人已经在上构建的代码 [XUL Ajax site][1]这似乎是您想要的——假设使用Ajax加载另一个页面是可以的

通过一点编码,您可以使用此技巧不显示任何内容、消息或其他页面(如果找不到您想要的页面)。。。现在,代码将显示404,因为它存在,但这是一个相当小的变化。事实上,如果您下载页面底部的脚本存档,并打开responseHTML.js文件,您可以取消注释一行,使其在另一个页面不存在时不起任何作用

代码示例使用硬编码的div名称,但您可以轻松地将其更改为自己的名称,或者修改函数以接受它们作为参数。我计划在不久的将来在我自己的一个站点上使用这段代码,如果另一个页面关闭,它需要重定向

如果不使用Ajax,我想不出一个好的方法来实现这一点

嗯,我在工作中分心了,链接也没有加载。其他答案基本相同,对于jQuery来说更简单。原始javascript对于不使用jquery的页面也很好,因此可能仍然值得在这里保持链接


我考虑过做类似的事情。我会用Ajax解决这个问题。谷歌搜索产生了其他人已经在上构建的代码 [XUL Ajax site][1]这似乎是您想要的——假设使用Ajax加载另一个页面是可以的

通过一点编码,您可以使用此技巧不显示任何内容、消息或其他页面(如果找不到您想要的页面)。。。现在,代码将显示404,因为它存在,但这是一个相当小的变化。事实上,如果您下载页面底部的脚本存档,并打开responseHTML.js文件,您可以取消注释一行,使其在另一个页面不存在时不起任何作用

代码示例使用硬编码的div名称,但您可以轻松地将其更改为自己的名称,或者修改函数以接受它们作为参数。我计划在不久的将来在我自己的一个站点上使用这段代码,如果另一个页面关闭,它需要重定向

如果不使用Ajax,我想不出一个好的方法来实现这一点

嗯,我在工作中分心了,链接也没有加载。其他答案基本相同,对于jQuery来说更简单。原始javascript对于不使用jquery的页面也很好,因此可能仍然值得在这里保持链接


哇,我发布了与你相同的答案!哇,我发布了和你一样的答案!好吧,显然我做错了什么,因为这里的例子都不适合我。实际运行的代码没有使用扩展名为.html的url。网站的后端将页面命名为“pages/test/”,没有后缀。这还能用吗?因为它不是。好吧,显然我做错了什么,因为这里的例子都不适合我。实际运行的代码没有使用扩展名为.html的url。网站的后端将页面命名为“pages/test/”,没有后缀。这还能用吗?因为它没有。