jquery 文字自动补全(文本自动补全)

来源:互联网 发布:java程序员教程 编辑:程序博客网 时间:2024/06/05 03:13

var val;
$(function() {
 var timeOut;
 $(".seach>.text").keyup(function(e) {
  if (e.keyCode > 36 && e.keyCode < 41 || e.keyCode == 13) {

   return false;
  }

  clearTimeout(timeOut);
  val = $(this).val();
  if (val != "") {
   timeOut = setTimeout(doPost, 200);
  } else {

   $(".seach").nextAll().remove();
  }
 });

 $(".seach>.text").keydown(function(e) {

  switch (e.keyCode) {
  case 40:
   down();
   break;//下
  case 38:
   up();
   break;//上
  case 13:
   doSearch();//回车
   break;
  }

 });
 $(".seach>.text").blur(function() {

  setTimeout(clear, 200);

 });
 $(".button").click(
   function() {
    window.location.href = "Search.action?goods.name="
      + $(".seach>.text").val();

   });

});
function clear() {
 $(".seach").next().remove();

}
function doPost() {

 $.get("GoodsSearch.action", {
  "goods.name" : val
 }, callback);
}
function callback(data) {
 var obj = eval(data);
 $(".seach").next().remove();
 var div = "<div style='border:1x solid #aaaaaa;float: left;height:30px;'>"
 for ( var i = 0; i < obj.length; i++) {

  div += "<div style='width: 175px;line-height: 30px;cursor:pointer;' onclick='Chk(this)'>"
    + obj[i].name + "</div>";
  if (i == 5) {

   break;
  }

 }
 div += "</div>"
 if (obj.length > 0) {
  $(".seach").after($(div));
 }

}
function up() {
 if ($(".searchBg").length == 0) {
  $(".seach").next().children().last().addClass("searchBg");
 } else {
  $(".searchBg").removeClass("searchBg").prev().addClass("searchBg");
 }
 if ($(".searchBg").length == 0) {

  $(".seach>.text").val(val);
 } else {
  $(".seach>.text").val($(".searchBg").text());
 }
}
function down() {
 if ($(".searchBg").length == 0) {
  $(".seach").next().children(":eq(0)").addClass("searchBg");
 } else {
  $(".searchBg").removeClass("searchBg").next().addClass("searchBg");
 }
 if ($(".searchBg").length == 0) {

  $(".seach>.text").val(val);
 } else {
  $(".seach>.text").val($(".searchBg").text());
 }
}
function doSearch() {

 window.location.href = "Search.action?goods.name="
   + $(".seach>.text").val();

 $(".seach").next().remove();

}
function Chk(o) {
 $(".seach>.text").val(o.innerText);
 $(".seach").next().remove();

}

原创粉丝点击