所以我有2个文件file1.php包含所有的php和ajax,而file2.php只有php。
$_POST["there_id"]
将通过ajax从file1.php页面发送到file2.php。
file1.php代码:
<div class="list_items">
<a href="" class="box" id="56545"><li><p>content here ...</p></a>
</div>
<div class="content_area">
//load ajax content here
</div>
$(".box").on("click", function(e) {
e.preventDefault();
var there_id = $(this).attr("id");
$.ajax({
url: "indexnew.php",
type: "POST",
data: { there_id : there_id}
});
});
file2.php代码:
<div id="file2content>
<?php
$there_id = $_POST['there_id'];
$user_id = 5;
$fetch_data = regular_query("SELECT * FROM contents WHERE
(user_by = :me or user_by + :them) AND (user_to = :me or user_to = :them)",
["me" => $user_id, "them" = $there_id], $conn);
foreach ($fetch_data as $data) : ?>
<a href=""><li><p>database data here</p></a>
<?php
endforeach;
?>
</div>
现在我要做的是当file2.php完成php并且列表项可用时我想在file1.php上加载file2contents
到content_area
。
答案 0 :(得分:2)
$(".box").on("click", function(e) {
e.preventDefault();
var there_id = $(this).attr("id");
$.ajax({
url: "indexnew.php",
type: "POST",
data: { there_id : there_id},
success: function(data) {
$('.content_area').html(data);
}
});
});
但是,content_area
应该是一个id而不是一个类,因此它是唯一的。
由于您只是返回html,因此可以使用.load()
函数对其进行简化。
$('.box').on('click', function(e) {
e.preventDefault();
var there_id = $(this).attr('id');
$('.content_area').load('indexnew.php', {there_id: there_id});
});
答案 1 :(得分:0)
success: function(data) { $(".content_area").html(data); }
如果我理解正确的话,将上述内容添加到您的AJAX调用中应该按照您的意愿执行。