我需要使用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
页面。
答案 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);
});
});
});