【问题标题】:How to type in two text fields simulatenously (jQuery)如何同时输入两个文本字段(jQuery)
【发布时间】:2010-05-25 22:03:12
【问题描述】:

我没能找到一个允许我同时写入两个输入的 jQuery 插件。

我正在尝试在一个字段中写一个普通的标题,同时在另一个输入中输入相同的文本,不使用特殊字符或空格。

例如

输入 1:这是我的标题!

输入 2:ThisIsMyTitle

【问题讨论】:

  • 您是否希望输入 1 中的每个字符在输入时出现在输入 2(减去特殊字符)在您键入时?
  • 在您键入时,如果他们将标题粘贴到...中,任何那种即时的条件都是理想的。

标签: jquery jquery-plugins


【解决方案1】:

在 keyup 上将输入值从当前输入复制到第二个输入,不需要插件。

$("input#first").keyup(function(e){
  var val = $(this).val();
  val = val.replace(/[^\w]+/g, "");
  $("input#second").val(val);
});

类似的东西

【讨论】:

  • 也可以使用this.value(比$(this).val()便宜很多)。另外,你应该缓存$("input#second")
  • 类似的东西==不是最佳的。我实际上是在与联想通话时写的。
【解决方案2】:
$("#myTextInput").keyup(function() {
    var text = $(this).val();
    text = processText(text);
    $("#secondTextField").val(text);
});

【讨论】:

    【解决方案3】:
    jQuery("input1").keyup(function() {
      jQuery("input2").val(removeWhiteSpace(jQuery("input1")));
    } 
    

    (伪代码)

    【讨论】:

      【解决方案4】:
      ​var a = jQuery('input#a'),
          b = jQuery('input#b');
      
      a.keyup(function(){
          b.val(this.value.replace(/[^\w]/g, ''));
      });​​​​​​​
      

      【讨论】:

        【解决方案5】:

        完整的代码,它只会得到字母和数字并显示在 input2 上,没有其他任何内容。

        $("#input1").keyup
        (
            function ()
            {
                $("#input2").val
                (
                    $(this).val().match(/[a-z]|[0-9]/gi).join("")
                );
            }
        );
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-12-27
          • 1970-01-01
          • 1970-01-01
          • 2021-11-02
          • 2017-07-05
          相关资源
          最近更新 更多