首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mention.js不停地建议用户

Mention.js不停地建议用户
EN

Stack Overflow用户
提问于 2021-09-26 21:43:05
回答 1查看 45关注 0票数 0

在将它添加到我的项目之前,我想测试一下它:来自GitHub:https://github.com/jakiestfu/Mention.js的一个类似Twitter的提到用户函数。

问题是,他的演示工作方式是,他手动创建了一些数据,并检索了这些数据。我不得不修改AJAX (我不太擅长使用我的数据库)。

问题是,每当我编写@时,脚本就会完美地向用户展示,但是在从列表中选择一个之后,列表不会消失,并会不断地建议用户。最重要的是,在选择了用户之后输入的任何内容,然后按下返回键,我在用户名之后输入的所有文本都将完全消失。

依赖关系:

head

  • jquery

  • mention.js

  1. 引导程序

我的剧本

代码语言:javascript
复制
$(document).ready(function(){
    $.getJSON('fetch.php', function(data) {
         $("#textarea").mention({
           users: data
            });
        });
            
    });

fetch.php (它是非常基本的,只用于测试):

代码语言:javascript
复制
header('Content-Type: application/json');
$con =new PDO("sqlite:database.db");
$user_data = array();

$users = $con->query("select * from users");

foreach($users as $key => $val)
{
$user_data[$key]['name'] = $val['f_name'];
$user_data[$key]['username'] = $val['name'];
$user_data[$key]['image'] = " ";

}

echo json_encode($user_data);

这是代码,HTML只是一个带有id=textarea的文本区域。

原稿:

代码语言:javascript
复制
$(document).ready(function(){
            
            $("#full").mention({
                users: [{
                    name: 'Lindsay Made',
                    username: 'LindsayM',
                    image: 'http://placekitten.com/25/25'
                }, {
                    name: 'Rob Dyrdek',
                    username: 'robdyrdek',
                    image: 'http://placekitten.com/25/24'
                }, {
                    name: 'Rick Bahner',
                    username: 'RickyBahner',
                    image: 'http://placekitten.com/25/23'
                }, 
            });
        });

如果我使用原始脚本,它可以完美地工作,没有任何问题,但是当我将它更改为我的脚本时,写作问题就开始出现。

EN

回答 1

Stack Overflow用户

发布于 2021-09-26 22:02:13

首先,利用别名获取数据。在这种情况下,比foreach循环更好。

代码语言:javascript
复制
$users = $con->query("select f_name as name, name as username from users");

然后用javascript代码将数据打印到控制台。

代码语言:javascript
复制
$(document).ready(function(){
    $.getJSON('fetch.php', function(data) {
         console.log(data);
         $("#textarea").mention({
           users: data
            });
        });
            
    });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69339177

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档