私はオートコンプリートウィジェットにいくつか問題があります。オプションを選択すると、項目値の前に改行といくつかの空白が付きます。ここでは結果が現れ方法は次のとおりです。オートコンプリートウィジェット(jQuery UI) - 改行はなぜですか?
Object { label="\n bedroom", value="\n bedroom"}
私はdonnoことが起こっている理由は、多分それは私がから値を取得するための配列を設定してい方法ですか?ここに私のコードです:
場合$("#step2").show(0, function() {
/*tags auto-complete*/
var tags = $('span', $('#liTags')).text();
var availableTags = tags.split(' ;');
$(".liTagInput").autocomplete({
minLength: 2,
source: availableTags,
select: function(event, ui) {
var value = ui.item;
console.log(value);
console.log(jQuery.inArray(value, availableTags));
if(jQuery.inArray(value, availableTags) >= 0)
$(this).val('');
}
});
});
あなたは、私が上span要素からタグを取得しています、私は(私が原因で改行をまだテストしていないもの)、ここでやろうとしているかと思っていますHTMLの側で、次にそれらを配列(availableTags
)に分割します。
次に、ユーザがテキストボックスに何かを入力すると、自動補完メニューから選択したものでなければ、テキストフィールドの値をクリアする必要がありますメニューから選択するように指示する警告を表示することもできますが、今はそのままにしておきます)。
どのような考えですか?
@ArtWorkAD:私は同様のことをやろうとしていましたが、改行がどこから来ているかを知りたいと思っていました。さらに、空白を削除するために、選択した自動補完メニューオプションの値を傍受するにはどうすればよいですか? – Kassem
あなたの「avaiableタグ」に改行があるようです。利用可能なタグをログに記録して、改行の理由を判断してください。空白を分割( ";")する理由は何ですか? –
@ArtWorkAD:これは、スパン要素のタグがスペースとセミコラムで区切られているためです。スペースを取り除いてテストします。 – Kassem