Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery UI自动完成:传入字符串返回数组_Javascript_Jquery_Jquery Ui_Autocomplete_Kineticjs - Fatal编程技术网

Javascript jQuery UI自动完成:传入字符串返回数组

Javascript jQuery UI自动完成:传入字符串返回数组,javascript,jquery,jquery-ui,autocomplete,kineticjs,Javascript,Jquery,Jquery Ui,Autocomplete,Kineticjs,我对jQueryUI及其自动完成功能相当陌生。是否可以将一个简单字符串(如var typedText=“)传入jQuery的自动完成功能并返回一个可能的自动完成匹配数组?我试图为KineticJS gui创建一个搜索栏,而不会像所有示例一样覆盖html文本输入。所以我只需要传入一个字符串并返回一个可能完成的列表 下面是一段代码来说明我的问题 // used as a temp var typedText=""; // *** this is what I want to pass

我对jQueryUI及其自动完成功能相当陌生。是否可以将一个简单字符串(如
var typedText=“
)传入jQuery的自动完成功能并返回一个可能的自动完成匹配数组?我试图为KineticJS gui创建一个搜索栏,而不会像所有示例一样覆盖html文本输入。所以我只需要传入一个字符串并返回一个可能完成的列表

下面是一段代码来说明我的问题

// used as a temp
var typedText="";     //    *** this is what I want to pass into autocomplete***

// Prevent the backspace key from navigating back
$(document).unbind('keydown').bind('keydown', function (event) {

  var doPrevent = false;
  if ((event.keyCode === 8 || event.keyCode === 48 )) { 

      event.preventDefault();

      if(typedText.length>0){
          typedText=typedText.slice(0,-1);
          searchText.setText(typedText);
          textBoxGroup.drawScene();
      }
  }
});

// handle normal "printable" keys
$(document).on('keypress',(function(e){

  if(isMouseOverTestList == false){
    return;
  }
  // get the key
  key=e.which;

  // let keydown handle control keys 
  if(key<32){return;}

  // add the typed character
  typedText+=String.fromCharCode(e.charCode);
  searchText.setText(typedText);;
  textBoxGroup.drawScene();

}));



$(function () {
    var availableTags = [
        "ActionScript",
        "AppleScript",
        "Asp",
        "Scala",
        "Scheme"];
    $(".language").autocomplete({ //--- how do I replace .language with a standard string var?
        source: availableTags,
        focus: function(evt, ui){
            var txtbx = $(this).parent().prev().text();
            $('#result').html(txtbx + ' textbox last focused');
            // ************************ now populate array with data?
        }
    });
});
//用作临时变量
var typedText=“”;//**这就是我想要传递给autocomplete的内容***
//防止backspace键向后导航
$(文档)。解除绑定('keydown')。绑定('keydown',函数(事件){
var doPrevent=false;
如果((event.keyCode==8 | | event.keyCode==48)){
event.preventDefault();
如果(类型文本长度>0){
typedText=typedText.slice(0,-1);
searchText.setText(typedText);
textBoxGroup.drawsecene();
}
}
});
//处理普通的“可打印”键
$(文档).on('keypress'),(函数(e){
if(isMouseOverTestList==false){
回来
}
//拿到钥匙
key=e.which;
//让keydown处理控制键

if(keyIt)听起来你的问题是关于jQuery选择器的,而不是具体的自动完成。如果是这样,你可以使用JavaScript字符串变量作为jQuery函数的参数用作选择器。谢谢……是的,这是问题的一部分。另一个问题是是否可以返回数组。