如何使用jquery autocomplete / combobox事件处理程序?

时间:2012-05-19 19:00:10

标签: javascript jquery autocomplete

尝试绑定autocomplete / combobox jquery插件的焦点事件另一个动作(在wrap元素上显示工具提示) jquery代码:

$(document).ready(function(){  
   $( "#municipality_cb" ).combobox({
    focus: function(event, ui) {
         //tipTip(); - tooltip script 
         $("#municipality_wrap").tipTip({maxWidth: "auto", edgeOffset: 10});    
      }        
   });
});

HTML:

<div class="ui-widget">
  <!--combobox wrapper div for tooltip -->
  <div id="municipality_wrap" title="Chose municipality: Karposh" style="float: left;">
      <select id="municipality_cb" tabindex="2" data-placeholder="Choose ..." 
        title="test">
            <option value=""></option>
            other options....  
      </select>
   </div>
</div>

工具提示根本没有显示。我做错了什么?请帮助:)

Jquery自动完成插件(查看事件选项卡) http://jqueryui.com/demos/autocomplete/#combobox

1 个答案:

答案 0 :(得分:1)

问题是.combobox没有焦点回调,因为你可以看到here 所以你必须使用以下代码:

$("#combobox").focus(function() {
    $("#wrapper").tipsy('show');
}).blur(function() {
    $("#wrapper").tipsy('hide');
});

但是.combobox会更改你的dom元素,如果你检查它们,你会看到它删除了你的元素,其中id是组合框。
所以下面的代码不起作用。
要解决此问题,您必须将$("combobox")更改为新的dom元素$("span.ui-combobox input")

您可以看到它正常工作 here

我在您的代码中看到的其他问题是您没有使用ui自动填充功能,请查看rereference以了解如何使用。