Javascript AJAX请求填充一个只在php文件中工作一次的popover

Javascript AJAX请求填充一个只在php文件中工作一次的popover,javascript,php,jquery,ajax,bootstrap-popover,Javascript,Php,Jquery,Ajax,Bootstrap Popover,我制作了一个简单的搜索栏,在每个.keyup事件中,一个异步请求都会发送到一个php文件,然后该文件会填充引导弹出窗口中的数据 问题是,在popover中,数据只填充一次,即当我键入第一个字符时,之后即使在多个.keyup事件之后也会显示相同的数据 代码如下: HTML: PHP: 尽管在$.ajax的success参数中,数据被很好地打印出来,也就是说,当我输入不同的字母表时,数据会发生变化,但popover内容不会发生变化 请提供一些解决此问题的建议。已显示popover。这不是动态更改po

我制作了一个简单的搜索栏,在每个.keyup事件中,一个异步请求都会发送到一个php文件,然后该文件会填充引导弹出窗口中的数据

问题是,在popover中,数据只填充一次,即当我键入第一个字符时,之后即使在多个.keyup事件之后也会显示相同的数据

代码如下:

HTML:

PHP:

尽管在$.ajax的success参数中,数据被很好地打印出来,也就是说,当我输入不同的字母表时,数据会发生变化,但popover内容不会发生变化


请提供一些解决此问题的建议。

已显示popover。这不是动态更改popover内容的正确方法

您的代码:

相反,直接寻址popover的内容:

var popover = e.attr('data-content',data);
popover.setContent();
工作溶液
Fiddle:

旁注,您需要参数化此sql SELECT FName FROM user,其中FName类似“%$word%”这一行不是问题,因为我为其测试制作了单独的html,它工作正常。这就是为什么它是旁注,我在这里给您一些友好的建议。由于SQL注入漏洞,你不应该把用户输入直接放入你的语句中。谢谢,我真的很感激,忘记考虑SQL注入的开发工具StrutSasCLAT的侧记解决了你的问题。还有一件事,如果我用这个方法来处理一个图像,即使在多次点击之后,PopFor也不会消失。有什么想法吗?请详细说明您的问题,最好使用提供的小提琴。
$("#search").keyup(function(){
        console.log('erer');
        //var searchString = $("#search").val();
        var data = $("#search").val();
         console.log(data);
          var e=$(this);
        //if(searchString) {
            $.ajax({
                type: "POST",
                url: "do_search.php",
                data: {search:data},
               success: function(data, status, jqXHR){
                    console.log('html->'+data+'status->'+status+'jqXHR->'+jqXHR);
                    e.popover({
                    html: true,
                    content: data,
                    }).popover('show');         
              },
               error: function() {
                    alert('Error occured');
                }
            });    
        //}
    });``
  $word = $_POST['search'];
    //echo $word;
    //$word=htmlentities($word)
    $sql = "SELECT FName FROM user WHERE FName LIKE '%$word%' ";
    //echo $sql;
    // get results
    //$sql = 'SELECT * FROM Profiles';
     $end_result = '';
    $result = mysqli_query($conn, $sql);
    if (mysqli_num_rows($result) > 0) {
    // output data of each row
    while($row = mysqli_fetch_assoc($result)) {
         #$end_result.='<li>'.$row["FName"].'</li>';
        #$_SESSION['fnamer'] = $row['Fname'];
         #$end_result.='<li>'.'<a href =view_search.php>'.$row["Fname"].'</a>'.'</li>';
        echo '<a href =view_search.php>'.$row["FName"].'</a>';
    }
        #echo $end_result;
}
var popover = e.attr('data-content',data);
popover.setContent();