Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.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
Javascript ajax替换PHP代码_Javascript_Php_Jquery_Html_Ajax - Fatal编程技术网

Javascript ajax替换PHP代码

Javascript ajax替换PHP代码,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,我试图用ajax更新REST搜索结果,以避免重新加载新页面 现在搜索结果显示在: <div id="searchtable"><?php include 'hotels/hotelList.php';?></div> 单击按钮,我想重新加载这个div元素,以便它包含一个新的php文件 按钮: <button onclick="myFunction()">LOAD</button><br /><br /> jQ

我试图用ajax更新REST搜索结果,以避免重新加载新页面

现在搜索结果显示在:

<div id="searchtable"><?php include 'hotels/hotelList.php';?></div>
单击按钮,我想重新加载这个div元素,以便它包含一个新的php文件

按钮:

<button onclick="myFunction()">LOAD</button><br /><br />
jQuery

<script>
function myFunction() {
  $.get( "/hotels/hotelSortBy.php" );
  $('#searchtable').replaceWith('<?php include 'hotels/hotelSortBy.php';?  >');
 }
</script>

我无法用replaceWith替换div元素searchable-我这样做对吗?

如果使用AJAX,就不需要内联PHP。尝试使用jQuery的.load AJAX方法:

function myFunction() {
  $('#searchtable').load('/hotels/hotelSortBy.php');
}

请注意,这与-using略有不同,它将保留searchtable并将新内容放在其中,而不是替换它。

尝试使用.html而不是replaceWith

所以看起来像

function myFunction(){
$('#searchtable').html('<? php include 'hotels/hotelSortBy.php'; ?>');
}

你误解了这里的一个关键因素。javascript在客户端运行,而php至少通常在服务器端运行。Javascript不解释php,除了json,php也不解释Javascript。您可能需要做的是一个ajax请求来调用服务于此php文件的url,以便您的Web服务器解释php并返回响应。可能检查?

一旦加载javascript,就不能执行PHP。加载javascript时,PHP已经执行完毕,您就在用户的浏览器中。“hotels/hotelSortBy.PHP”和“/hotels/hotelSortBy.PHP”不是一回事儿。@BrianWarshaw你不知道。如果我们太学究了,我会换句话:假设A和B是一样的是愚蠢的。为什么这么愚蠢?更可能是故意的,因为PHP正在遍历文件系统而不是web服务器。@Blazemonger,如果执行其脚本的页面位于url place.com/some/path,那么这两者肯定是不同的,这不是一个安全的假设。我不是说绝对路径更糟糕,但假设相对路径是相对于www根的,这绝对不是一个安全的赌注。在加载javascript后仍然无法执行php代码。如果希望在加载javascript后执行php代码,最好使用ajax。或者最糟糕的事情是在替换html后重新加载整个页面。