【问题标题】:Action with Multiple Attribute Selector jQuery具有多属性选择器 jQuery 的操作
【发布时间】:2012-10-02 07:41:48
【问题描述】:

我正在尝试使用键盘输入数值。

我的问题如下:键盘有一个“接受”按钮,我有几个文本字段,我想为每个文本字段添加不同的操作。我尝试使用多个属性选择器但不起作用。

<input id="txt1" type="text" /> </br>
<input id="txt2" type="text" /> </br>
<input id="txt3" type="text" /> </br>

$('input[type=text]').keyboard({
    layout: "num"
});

$('.ui-keyboard').on('click', 'input[name="key_accept"]',function() {
    alert('Accept button was clicked in text1');
    // do your stuff here
});

您可以在此链接中显示示例http://jsfiddle.net/Mils/W2xFX/25/

警报适用于所有文本字段,但我希望每个文本都有不同的警报。

【问题讨论】:

  • 您要显示的文字是什么?每个人有什么不同?
  • 我希望为每个文本字段执行不同的操作 类似这样的东西:jsfiddle.net/Mils/W2xFX/26 但只有一个警报。例如,当我修改第二个文本字段时,我有此警报“在 text2 中单击了接受按钮”
  • 嗯,这是一种方法:jsfiddle.net/NK9me 但是您应该真正检查您正在使用的插件的文档,看看它们是否以更好的方式使原始输入可用。我不知道那是什么插件。你真的应该在问题中包含这些信息。
  • 抱歉,如何获取文本字段中的值?
  • 您使用的keyboard 插件是什么?

标签: javascript jquery css jquery-ui keyboard


【解决方案1】:

http://jsfiddle.net/W2xFX/35/

您只需要跟踪活动文本框(最后一个关注的文本框)。

【讨论】:

    【解决方案2】:

    由于您使用的组件没有公开任何接受和取消的事件,因此需要外部解决方案。例如,您可以将当前元素保存在焦点上,并在接受按钮事件中使用它。

    演示: http://jsfiddle.net/W2xFX/27/

    代码:

    var currentKB = null;
    $('input[type=text]').focus(function() {
        currentKB = this;
        return true;
    });
    
    $('input[type=text]').keyboard({
        layout: "num"
    });
    
    $('.ui-keyboard').on('click', 'input[name="key_accept"]',function(e, x) {
        alert('Accept button was clicked in ' + currentKB.id);
        // do your stuff here
    });
    

    【讨论】:

      猜你喜欢
      • 2011-09-23
      • 1970-01-01
      • 2012-06-08
      • 1970-01-01
      • 1970-01-01
      • 2015-09-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多