【问题标题】:Jquery autocomplete with jquery 1.4使用 jquery 1.4 的 Jquery 自动完成功能
【发布时间】:2010-01-23 00:27:02
【问题描述】:

参考this postthis one。我正在尝试使用jquery autocomplete plugin 为我的博客/网站实现类似于 SO 标记系统的标签搜索,我使用的是 jquery 1.4 最新版本,所以我不确定它是否适用,我用过这个插件以前曾经。因此,无需进一步的 jibr-jabr,这里就是我用于自动完成的 html:

<input id="post-tags" class="ac_input" type="text" autocomplete="off" value="" name="post_tags"/> 

这是我的 javascript:

<script type="text/javascript">
   $(document).ready(function(){

 function findValueCallback(event, data, formatted) {
  $("<li>").html( !data ? "No match!" : "Selected: " + formatted).appendTo("#result");
 }

 function formatItem(row) {
  return row[0] + " (<strong>id: " + row[1] + "</strong>)";
 }
 function formatResult(row) {
  return row[0].replace(/(<.+?>)/gi, '');
 }

 $("#post_tags").autocomplete("http://localhost/tags/filter/", {
  width: 260,
  selectFirst: false
 });

 $("#clear").click(function() {
  $(":input").unautocomplete();
 });


    });
  </script> 

我确定我的 php 部分没问题,当我手动输入 url http://localhost/tags/filter/p 时,它的工作原理是这样的

我返回以下内容:

php (1)
asp (1)

意思是所有包含p的标签,目前我只有这两个。我的问题是,我做错了什么,我真的被困在这个问题上,我已经改变了很多次,现在我想不出我想做的任何新事情。谢谢

【问题讨论】:

    标签: javascript jquery jquery-plugins jquery-autocomplete


    【解决方案1】:

    诀窍是使用 post 而不是 get,当使用 get / 时会被删除,但在使用 post complete 时会传递,因此自动完成需要一些调整(额外一行):

    $.ajax({
                    type: "post", // This is the new line
                    // try to leverage ajaxQueue plugin to abort previous requests
                    mode: "abort",
                    // limit abortion to this input
    

    现在一切都像魅力一样运作..

    【讨论】:

      猜你喜欢
      • 2011-01-05
      • 2011-09-10
      • 1970-01-01
      • 2015-06-20
      • 1970-01-01
      • 2016-04-14
      • 2018-08-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多