[英]Getting both @user and #tag using jquery autocomplete?
I have been using Andrew Whitaker's code at jsfiddle.net/5xbhY. 我在jsfiddle.net/5xbhY上一直在使用Andrew Whitaker的代码。 I was hoping someone could help me make it work for both @user and #tags ( they come from different external db's but I should be able to write that part what I am having trouble with is detecting the hash).
我希望有人可以帮助我使它同时适用于@user和#tags(它们来自不同的外部数据库,但是我应该能够写出我遇到问题的那一部分来检测哈希)。
var availableTags = [ "ActionScript", "AppleScript", "Asp", "BASIC", "C", "C++", "Clojure", "COBOL", "ColdFusion", "Erlang", "Fortran", "Groovy", "Haskell", "Java", "JavaScript", "Lisp", "Perl", "PHP", "Python", "Ruby", "Scala", "Scheme" ]; var startTyping = "Start typing..."; function split(val) { return val.split(/@/); } function extractLast(term) { return split(term).pop(); } $("#tags") .bind("keydown", function(event) { if (event.keyCode === $.ui.keyCode.TAB && $(this).data("autocomplete").menu.active) { event.preventDefault(); } }).autocomplete({ minLength: 0, source: function(request, response) { var term = request.term, results = []; if (term.indexOf("@") >= 0) { term = extractLast(request.term); if (term.length > 0) { results = $.ui.autocomplete.filter( availableTags, term); } else { results = [startTyping]; } } response(results); }, focus: function() { return false; }, select: function(event, ui) { if (ui.item.value !== startTyping) { var terms = this.value.split(' '); terms.pop(); terms.push("@" + ui.item.value); this.value = terms.join(" "); } return false; } });
Do you mean something like this: http://jsfiddle.net/BfAtM/181/ 您的意思是这样的吗: http : //jsfiddle.net/BfAtM/181/
Oh, I noticed a bit late I'm responding to a 3 months old question. 哦,我注意到我回答一个3个月大的问题有点晚了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.