【问题标题】:Jquery autocomplete for text area文本区域的 Jquery 自动完成
【发布时间】:2013-05-02 15:01:16
【问题描述】:

我正在为文本区域使用 jquery 自动完成功能。我希望每当我按“空格键”时调用自动完成功能。它只有第一次才能正常工作。有人可以帮我解决这个问题吗?**

我使用了以下代码:

<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"      type="text/javascript">    </script>
        <script src="http://code.jquery.com/ui/1.8.18/jquery-ui.min.js" type="text/javascript"></script>
        <script src="http://jquery-ui.googlecode.com/svn/tags/latest/external/jquery.bgiframe-2.1.2.js"  type="text/javascript"></script>
        <script src="http://jquery-ui.googlecode.com/svn/tags/latest/ui/minified/i18n/jquery-ui-i18n.min.js" type="text/javascript"></script>
<script>
function auto_comp(flag1)
{

$(function() {

    var availableTags = [
        "ActionScript",
        "AppleScript",
        "Asp",
        "BASIC",
        "C",
        "C++",
        "Clojure",
        "COBOL",
        "ColdFusion",
        "Erlang",
        "Fortran",
        "Groovy",
        "Haskell",
        "Java",
        "JavaScript",
        "Lisp",
        "Perl",
        "PHP",
        "Python",
        "Ruby",
        "Scala",
        "Scheme",
        "{ }"

    ];
if(flag1 == 1)
{

    $( "#tags" ).autocomplete({

        source: availableTags
    });

}
});
}
</script>

<div class="demo">

<div class="ui-widget">
<textarea id="tags" name="get" rows="5" cols="31"></textarea>

<script>
  var charfield=document.getElementById("tags");

 var flag=0;
 charfield.onkeypress=function(e){
  var e=window.event || e;
  var keyunicode=e.charCode || e.keyCode;
   if(keyunicode == '97'|| keyunicode == '65')
  {
   flag=1;
  auto_comp(flag);

 }
document.getElementById("unicode").value=keyunicode;
}

  </script>
</body></html>

【问题讨论】:

    标签: jquery-ui autocomplete


    【解决方案1】:

    【讨论】:

    • 当我在 availabletags 数组中给出 "()" 或 "[]" 时,当我输入 '(' 或 '[' 但对 "{}" 有效。
    • 嘿,谢谢。 text-area-imput-support 工作得很好,它也与markItUp 配合得很好。
    【解决方案2】:

    jQuery 自动完成是一个小部件,因此不需要在每次需要它来做某事时都调用它。你可以这样做:

    $( "#tags" ).autocomplete({
        source: availableTags
    }).bind( "autocompletesearch", function(event, ui) {
        return !(event.keyCode == '97'|| event.keyCode == '65');
    });
    

    【讨论】:

      【解决方案3】:

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-11-06
        • 2011-09-03
        • 1970-01-01
        • 2011-05-18
        • 2017-08-30
        • 1970-01-01
        • 2021-08-04
        • 2010-12-06
        相关资源
        最近更新 更多