我已经为我的网站博客文章构建了一个小型搜索引擎,我正在使用 Ajax 提交表单,然后返回结果并用新的搜索结果替换旧内容,问题是如果我搜索一次它可以工作,但如果我再次搜索它只显示第一次搜索的结果。任何帮助都会非常感谢!
HTML
<form action="handlers/handler-search.php" class="align-right" method="post">
    <input type="text" name="term"  placeholder="Search app reviews...">
    <input type="submit" value="Go">
</form>
jQuery 阿贾克斯
    $('form').submit(function (event) {
    event.preventDefault();
    $(".content").fadeOut(750);
    $.ajax({
        type: "POST",
        url : $('form').attr('action'),
        dataType: "json",
        data: $("form").serialize()
    }).done(function(data) {
        var string = "";
        $.each(data, function(i,item) {
         string += "<section class='widget six'> \
         <a href='index.php?art_id="+item.art_id+"'> \
         <div class='content'> \
         <h1>"+item.art_title+"</h1> \
         </div> \
         </a> \
         </section>";
        });
        $('.results').replaceWith(string);
        $(".content").fadeIn(750);
    });
   return false;
});
PHP/SQL
if(isset($_POST['term'])) {
$statement_search = $db->prepare("SELECT * FROM app_articles WHERE art_title LIKE :term");
$statement_search->setFetchMode(PDO::FETCH_ASSOC);
$statement_search->execute(array(':term' => '%'.$_POST['term'].'%'));   
$data = $statement_search->fetchAll();
echo json_encode($data);
}