在jQuery中附加外部PHP文件

时间:2018-10-09 12:49:47

标签: javascript php jquery jquery-load

我指的是here回答的问题。

尝试将外部PHP文件附加到jQuery中,并尝试了load

$(".chatbox").load("./one.php");

这给了我输出;

  

您的成功信息!

不过,这令人担忧的是,它删除了正文中的所有HTML,并没有真正“附加” 成功消息。

我尝试了以下方法。

$(".chatbox").append("./one.php");

仅打印此内容!

  

./ one.php

我在这里想念东西吗?

2 个答案:

答案 0 :(得分:1)

.load()从服务器加载数据,并将返回的HTML放入匹配的元素中。但是您需要使用$.ajax()$.get()来获取数据并将其返回给回调函数。

$.get("./one.php", function(data) {
   $(".chatbox").append(data);
});

答案 1 :(得分:0)

如果由于某些原因您试图加载的页面失败,您还需要处理错误块以通知您该问题。这是一种更全面的方法。在这里,我叫一个Wiki页面,但是您会知道,所有php页面实际上都被PHP引擎解释为有效的html:)

$.ajaxPrefilter( function (options) {
  if (options.crossDomain && jQuery.support.cors) {
    var http = (window.location.protocol === 'http:' ? 'http:' : 'https:');
    options.url = http + '//cors-anywhere.herokuapp.com/' + options.url;
  }
});


$.ajax({
  type: "GET",
  url: "https://en.wikipedia.org/wiki/PHP",
  data: { },
  success: function(data){
    $('#demo').html(data);
  },
  error: function(XMLHttpRequest, textStatus, errorThrown) {
    $('#demo').html("Status: " + textStatus + "<br/>Error: " + errorThrown);
  }
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div id="demo"></div>