【问题标题】:detect if jquery easy ui combobox has focus检测 jquery easy ui 组合框是否有焦点
【发布时间】:2012-12-19 22:39:58
【问题描述】:

假设我有一个这样的 jQuery EasyUI 组合框:

<input class="easyui-combobox" id="combobox" data-options="
    valueField: 'label',
    textField: 'value',
    data: [{
        label: 'java',
        value: 'Java'
    },{
        label: 'perl',
        value: 'Perl'
    },{
        label: 'ruby',
        value: 'Ruby'
}]" />

如何检测组合框何时具有焦点,然后相应地执行一些操作?

我试过这样的东西:

$('#combobox').focus(function(){
    alert('FOCUS');
});

var combobox_panel = $('#combobox').combobox('panel');

combobox_panel.focus(function(){
    alert('FOCUS');
});

但这些都不起作用。请问有什么办法吗?

谢谢

【问题讨论】:

  • 你试过了吗..$(#coombobox1).bind("focus", function () { });
  • 我不想绑定焦点,我想检测元素是否有焦点
  • 你想什么时候/在哪里做?
  • 我想知道当用户从组合框中进行选择时。

标签: jquery combobox jquery-easyui


【解决方案1】:

那是因为原始输入被破坏并被新的“假”输入替换以使其美观。您可以尝试在一个元素上一起查找 combo-text validatebox-text 类并绑定到该元素。

$('.combo-text.validatebox-text').on('focus', function() {
    alert('here'); // warning, for some reason I keep alerting.
});

这并不完美,但它是一个开始。检查 Chrome 或 FF 中的输入元素,您将看到库如何构建新输入。

编辑

阅读完您的 cmets 后,您真的只需要知道用户何时选择了一个值。

$('.combobox-item').on('click', function() {
    alert(this.textContent);
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-03
    • 1970-01-01
    • 2017-12-17
    • 2011-03-19
    • 1970-01-01
    • 2010-11-01
    相关资源
    最近更新 更多