0

试图绑定自动完成/组合框 jquery 插件的焦点事件一些另一个动作(在包装元素上显示工具提示) 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

4

1 回答 1

1

问题是 .combobox 没有焦点回调,正如您在此处看到的那样。
所以你必须使用以下代码:

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

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

你可以看到它在这里工作。

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

于 2012-05-19T20:35:34.703 回答