2016-09-03 16 views
2

請建議我如何搜索或自動建議不僅使用@而且使用#鍵以及下面的同一段腳本。任何簡化解決方案的正則表達式將不勝感激。使用引導提示的Twitter或@或#鍵搜索

$('textarea').suggest('@', { 
    // or an external JSON data file 
    data: users, 

    // style the autocomplete/autusuggest list 
    map: function(user) { 
      return { 
      value: user.username, 
      text: '<strong>'+user.username+'</strong> <small>'+user.fullname+'</small>' 
      } 
     } 
     }); 

同樣的鏈接在這裏給出Twitter Like @Mentions Auto Suggesting。 這個問題是我想@和#這兩個鍵被用作搜索模式。但是在上面的腳本中只使用了@。

+0

不知道,但在[商務部](http://lodev09.github.io/bootstrap-suggest/)他們說:'$( '#textarea')。suggest({key:options,key2:options})'所以我猜'.suggest({'@':optsObj,'#':optsObj});''鍵'可能是一個正則表達式,或者至少是一個字符串,用逗號,空格或其他任何形式來處理單獨的鍵 –

回答

0

DOC,你需要使用:

var optsObj = { 
    // or an external JSON data file 
    data: users, 

    // style the autocomplete/autusuggest list 
    map: function(user) { 
    return { 
     value: user.username, 
     text: '<strong>' + user.username + '</strong> <small>' + user.fullname + '</small>' 
    } 
    } 
}; 

$('textarea').suggest({ 
    '@': optsObj, 
    '#': optsObj 
}); 
+0

完美!我已經閱讀了文檔,但沒有注意到這個數字,但是你保存了我的一天。非常感謝。 –

+0

如何識別使用@或#進行搜索? –

+0

@HimanshuShekhar看起來像這個插件不處理它。一種方式可以是擴展作爲選項傳遞的obj並設置關鍵屬性:$('textarea')。suggest({},{.extend({},optsObj,{key:'@'}), '#':$ .extend({},optsObj,{key:'#'}) });'然後在任何插件回調中,檢查'this.key'。或者簡單地說,對於每個鍵,傳遞不同的obj選項。現在我很不清楚你希望如何檢查它。你應該提供一個jsFiddle複製你的問題和預期的行爲,我想有更好的方法來做取決於你在找什麼 –