jquery+phpでネームタガーを作ろうとしています。私は PHP 部分を完了し、jquery コードは 99% 完了しましたが、'@' 記号の後に検索する文字列を渡すことが問題です。現在、contentEditable を true に設定した div を使用しています。コンソールログに表示されているものから、name 変数は実際には @+search 文字列ですが、リスト div は入力されません。スクリプトを手動で実行してデバッグしようとしたところ、name 変数を特定の 1 文字に設定するなど、機能しました。リスト div にデータを入力します。ヒントや提案は、以下の私のコードに感謝します:
$("#chat-message").bind("keyup", function (event) {
//auto name complete
var search = $(this).text();
var searchbox = search.split(search.indexOf('@') + 1);
var checker = search.substr(search.length - 1); //Checks last charcter inserted if its '@'
var name = search.match(/@(\w+)/ig);
console.log(name);
var dataString = 'searchword=' + name + '&search=yes';
if (name == '' || checker == " ") {
$("#display-search").hide();
} else if (checker === "@") {
$.ajax({
type: "POST",
url: "searchy.php",
data: dataString,
cache: false,
success: function (html) {
$("#display-search").html(html).show();
}
});
}
return false;
});