2017-03-02 11 views
0

私はMagicSuggestを使用しています。ぼかしイベントの選択肢の長さを取得する必要があります。私のコードは、ENTERキーで新しい選択項目を追加してもうまくいきますが、リストから既存の選択項目を選択しても機能しません。MagicSuggest:ぼかしの選択肢の長さを取得

ユースケースユーザーがEnterキーを経由しての提案を選択した場合

  1. 、長さ= 1 - 正しい
  2. ユーザーがマウスクリックを経由しての提案を選択した場合
  3. 、長さ= 0 - 正しくない、する必要があります1

JSfiddle https://jsfiddle.net/a1ejqtae/7/

HTML

<form action=""> 
    <label for="keyword">Keywords</label> 
    <input type="text" id="keywords"> 
</form> 

JS

$('form input').on('blur', function(){ 

var selectionLength = $('form .ms-sel-item').length; 
$('.selection-name').text(selectionLength); 
console.log('Selection is ' + selectionLength); 

if(selectionLength > 0){ 
console.log('Selection is greater than 0'); 
} 

}); 

PS誰もが、このプラグインに何が起こったのか知っているか、githubのページがまだ実行されているが、すべてのドキュメントとサンプルとのサイトがダウンしています - http://nicolasbize.com/magicsuggest/doc.html。帰りのマシンの良さに感謝します。

答えて

1

私はあなたのjsfiddleに以下のコードをテストし、それがうまく働いた:

var labelName = $('label').text(); 
console.log('label = ' + labelName); 

$('#keywords').magicSuggest({ 
    hideTrigger: true, 
    placeholder: 'Start typing for keyword suggestions', 
    useZebraStyle: true, 
    data: ["banshee", "fargo", "house", "csi", "ncis"], 
    method: 'get' 
}); 

var update = function(){ 
    var selectionLength = $('form .ms-sel-item').length; 
    $('.selection-name').text(selectionLength); 
    console.log('Selection is ' + selectionLength); 
} 

$('form input').on('blur', function(){ 

update(); 

}); 
$(window).on('keyup', function(e){ 
if(e.keyCode === 13){ 

    update(); 
    $(this).blur(); 
} 

}); 
$(window).on('click', function(e){ 
    update(); 
    $(this).blur(); 
}); 

は、すべての問題があったなら、私に教えてください。私はそれが助けて欲しい

+0

ありがとうございますが、私はまだマウスクリックで同じ結果を得ています。 https://jsfiddle.net/r87zvxy5/1/ –

+0

@ClintonGreen申し訳ありませんが、私は私の答えを更新しました。クリックしてもうまくいくはずです。 – alireza

+1

助けてくれてありがとう: –

関連する問題