如何使用JavaScript / jQuery仅刷新PHP头文件?

时间:2017-04-17 09:20:12

标签: javascript php jquery

我需要使用JavaScript / jQuery重新加载头文件而不是整个页面。我在下面解释我的代码。

<?php
 require_once('include/listspace_header.php');
?>
<div class="popover-content">
<p>                            
<select class="chosen-select text-left" style="width:100%;"  onchange="setCountry();" id="conid">
<option value="" selected>Select Country</option>
<?php
    foreach ($country as $v) {
?>
<option value="<?php echo $v['country_id']; ?>"><?php echo $v['country_name']; ?></option>
<?php
 }
?>
</select>
</p>
</div>

在这里,我需要使用JavaScript / jQuery而不是整个页面重新加载include/listspace_header.php页面。

2 个答案:

答案 0 :(得分:0)

如何简单地将其放入div中,例如:

在listspace_header.php中:

echo '<div id="headerReload">';
----- LISTSPACE_HEADER.PHP CONTENT -----
echo '</div>';

然后使用load()方法再次获取文件,最有可能使用更新的数据?像这样:

$(".chosen-select").change(function() {
    $(".headerReload").load('include/listspace_header.php');
)};

修改

好吧,我上面提供的代码会不幸地导致div id="headerRealod"的加倍,三倍和倍增,所以我认为在div周围设置这个php require_once标记会更好基本文件中的代码。

答案 1 :(得分:0)

您正试图从JavaScript触发php代码。一旦将HTTP数据发送到客户端浏览器,就无法使用JavaScript来告知使用服务器端包含的PHP重新加载文件并更新已经发送到客户端浏览器的网页部分。相反,您将使用Ajax获取listspace_header.php文件的内容并动态地将它们推入标头。

以下是使用jquery

的示例
<div id='header'>
<?php
 require_once('include/listspace_header.php');
?>
</div>

<button id='reloadHeader'>Reload Header</button>

<div class="popover-content">
<p>                            
<select class="chosen-select text-left" style="width:100%;"  onchange="setCountry();" id="conid">
<option value="" selected>Select Country</option>
<?php
    foreach ($country as $v) {
?>
<option value="<?php echo $v['country_id']; ?>"><?php echo $v['country_name']; ?></option>
<?php
 }
?>
</select>
</p>
</div>

JQuery

$(document).ready(function(){

//Button Click Event to Reload header file 
 $('#reloadHeader').click(function(){

  //Send Ajax Request to get the contents of header file 
  $.ajax({url: "include/listspace_header.php", success: function(result){
     $('#header').html(result);
  });  

 });

});