0

MySQLデータベースからフィードするテキストエリアで(@)を使用して言及を実装しようとしています。これは以下で使用しているコードです

   var start=/@/ig; // @ Match
                        var word=/@(\w+)/ig; //@abc Match

                        $("#newstatus").live("keyup",function()
                        {
                            var content=$(this).val() //Content Box Data
                            var go= content.match(word); //Content Matching @
                            var name= content.match(word); //Content Matching @abc
                            var dataString = 'searchword='+ name;
//If @ available
                            if(go.length>0)
                            {
                                $("#msgbox").slideDown('show');
                                $("#display").slideUp('show');
                                $("#msgbox").html("Type the name of someone or something...");
//if @abc avalable
                                if(name.length>0)
                                {
                                    $.ajax({
                                        type: "POST",
                                        url: siteurl + "ajax/mention", // Database name search
                                        data: dataString,
                                        cache: false,
                                        success: function(data)
                                        {
                                            $("#msgbox").hide();
                                            $("#display").html(data).show();
                                        }
                                    });
                                }
                            }
                            return false;
                        });

問題は、提案されたボックスを表示し続けるテキストを追加すると発生します。たとえば、@WORD im を使用して新しい文を開始するたびに検索を停止したい

@blackberry is my favorite smartphone ! 

そのテキストエリアで複数の言及を使用する場合があります。@ を使用するときはいつでもそれを行う方法を教えてください。選択したときはいつでもリストを提案しました。

4

1 に答える 1