我认为标题不是那么清楚。以下解释会更好。
我的页面包含一个Ajax驱动的Feed从PHP脚本获取数据。如果所有内容都已加载,则按钮将按“成功”条件中的定义更改。它运作良好。现在我已经更改了PHP文件的数据,它不会改变。但我不清楚问题的原因或原因。
因为问题似乎出现在ajax-call之前的输出中,所以我将只插入我从MySQL创建数组行的部分,因为先前的代码通常是相同的:
if(isset($_POST["limit"], $_POST["pid"],$_POST["start"]))
{
$query = "SELECT - QUERY";
$result = mysqli_query($con, $query);
while($row = mysqli_fetch_array($result))
{
$text = preg_replace('/(?<!\S)#([0-9a-zA-Z]+)/', '<a style="color:orange; text-decoration: none; font-weight: bold;" href="brand?p=$1">#$1</a>', $row["post"]);
if(!empty($row["vact"])) {
$vote_rank = $row["vact"];
if($vote_rank == 1) {
$up = "enabled";
$down = "disabled";
$colup = "orange";
$coldw = "grey";
}
elseif($vote_rank == 2) {
$up = "disabled";
$down = "enabled";
$colup = "grey";
$coldw = "orange";
}
}
else {
$up = "enabled";
$down = "enabled";
$colup = "orange";
$coldw = "orange";
}
if(empty($row["vote"])) {
$votres = 0;
}
else {
$votres = $row["vote"];
}
echo '
<div class="" id="reply-'.$row["id"].'">
<img src='.$row["img"].' class="img-fluid" style="max-width:450px; width:100%;">
<div class="container" style="max-width:600px;">
<p class="w3-xlarge w3-padding lead" >"'.$text.'"</p>
<div class="w3-row">
<div class="w3-left vtbtn">
<button style="color:'.$colup.';" '.$up.' onClick="addVote('.$row["id"].',2)"><i class="material-icons">sentiment_very_satisfied</i></button>
<a id="votes-'.$row["id"].'">'.$votres.' </a>
<input type="hidden" id="vts-'.$row["id"].'" value="'.$votres.'">
<button style="color:'.$coldw.';" '.$down.' onClick="addVote('.$row["id"].',1)"><i class="material-icons">sentiment_dissatisfied</i></button>
<a href="post_coll_add.php?pid='.$_POST["pid"].'&id='.$row["id"].'" style="color:orange;"><i class="material-icons">add</i></a>
</div>
<div class="text-muted w3-right" style="width:45%; text-align: right; margin-bottom: 50px;">By <a href="profile?usid='.$row["usid"].'">'.$row["fn"].'</a>
<img class="w3-circle" style="width:20%;" src="'.$row["uav"].'"></div>
</div>
</div>
</div>
';
}
}
在我的另一个文件中,我收到输出(echo),它将附加到先前的输出。到目前为止它有效吗?
$(document).ready(function(){
var pid = '<? echo $pid; ?>';
var limit = 7;
var start = 0;
var action = 'inactive';
function load_country_data(limit, start)
{
$.ajax({
url:"feed_xp_fetching.php",
method:"POST",
data:{limit:limit, start:start, pid:pid},
cache:false,
success:function(data)
{
$('#load_data').append(data);
if(data == '')
{
$('#load_data_message').html("<button type='button' class='btn btn-info'>No Data Found</button>");
action = 'active';
}
else
{
$('#load_data_message').html("<button type='button' class='btn btn-warning'>Please Wait....</button>");
action = "inactive";
}
}
});
}
if(action == 'inactive')
{
action = 'active';
load_country_data(limit, start);
}
$(window).scroll(function(){
if($(window).scrollTop() + $(window).height() > $("#load_data").height() && action == 'inactive')
{
action = 'active';
start = start + limit;
setTimeout(function(){
load_country_data(limit, start);
}, 1000);
}
});
});
因此,如果每个符合条件的元素出现,则该按钮应从<button type='button' class='btn btn-warning'>Please Wait....</button>
转为<button type='button' class='btn btn-info'>No Data Found</button>
。但事实并非如此。
由于我尝试了一些不太可能删除页脚的主题,我认为问题是以前PHP文件中发生的问题。
但是我没看到的问题在哪里?
其他信息:
这是其中的代码(不使用函数AddVote)来自while:
while($row = mysqli_fetch_array($result)) {
$text = preg_replace('/(?<!\S)#([0-9a-zA-Z]+)/', '<a style="color:orange; text-decoration: none; font-weight: bold;" href="brand?p=$1">#$1</a>', $row["post"]);
echo '
<div class="">
<img src='.$row["img"].' class="img-fluid" style="max-width:450px; width:100%;">
<div class="container" style="max-width:600px;">
<p class="w3-xlarge w3-padding lead" >"'.$text.'"</p>
<div class="w3-row">
<div class="w3-left">
<a href="post_vote.php?pid='.$_POST["pid"].'&id='.$row["id"].'&vid=1" style="color:orange;"><i class="material-icons">sentiment_very_satisfied</i></a> '.$row["vote"].' </a>
<a href="post_vote.php?pid='.$_POST["pid"].'&id='.$row["id"].'&vid=0" style="color:orange;"><i class="material-icons">sentiment_dissatisfied</i></a>
<a href="post_coll_add.php?pid='.$_POST["pid"].'&id='.$row["id"].'" style="color:orange;"><i class="material-icons">add</i></a>
</div>
<div class="text-muted w3-right" style="width:45%; text-align: right; margin-bottom: 50px;">By <a href="profile?usid='.$row["usid"].'">'.$row["fn"].'</a>
<img class="w3-circle" style="width:20%;" src="'.$row["uav"].'"></div>
</div>
</div>
</div>
';
}