Подтвердить что ты не робот

JQuery: зеркальное отображение одного текстового ввода в другое

Я хочу, чтобы одно текстовое поле автопопулялось с тем, что в него вложено другое текстовое поле.

Как мне это сделать?

Спасибо! Хадсон

4b9b3361

Ответ 1

Короче и просто:

$('#idfield1').keypress(function() {
    $('#idfield2').val($(this).val());
});

или связать его с несколькими событиями, чтобы обновить его, если он потеряет фокус:

$('#idfield1').bind('keypress keyup blur', function() {
    $('#idfield2').val($(this).val());
});

Ссылка: .keypress(), .val(), .blur(), .bind()

Update:

Из-за таинственных причин, когда набирается символ first, он не задан в другом поле ввода. У кого-нибудь есть идея?;)

Он работает, хотя используя keyup (keydown также производит тот же странный результат).

Ответ 2

Для альтернативы:

$('#idfield1').bind('keyup keypress blur', function() 
{  
      $('#idfield2')[0].value = $(this)[0].value; 
});

или

$('#idfield1').bind('keyup keypress blur', function() 
{  
    $('#idfield2').val($(this).val()); 
});

Для более новой версии jQuery вы также можете использовать .on

$('#idfield1').on('keyup keypress blur', function() 
{  
      $('#idfield2').val($(this).val());  
});

Ответ 3

Дастин Диаз написал замечательное зеркало для виджета Twitter, используя jQuery

$.fn.mirror = function (selector) {
    return this.each(function () {
        var $this = $(this);
        var $selector = $(selector);
        $this.bind('keyup', function () {
            $selector.val(($this.val()));
        });
    });
};

Используйте его как

$('#source_text_id').mirror('#destination_text_id'); 

Ответ 4

Простой: http://jsfiddle.net/brynner/KnXJc/

HTML

<input type="text" class="mirror" placeholder="one">
<input type="text" class="mirror" placeholder="two">

JQuery

$('.mirror').on('keyup', function() {
    $('.'+$(this).attr('class')).val($(this).val());
});

Ответ 5

$( document ).ready(function() {

    console.log( "ready!" );

   /*  $( ".checking" ).blur(function() {
          alert( "Handler for .blur() called." );
        }); */
        $(".formula_open").click(function(){
            getval();
         function getval(){
        var schedulenameexpression= $('.idfield1').val();
        var res = schedulenameexpression.split(/[\s()+*-/]+/);
        var i,text,substri,newitem;

        for (i = 0; i < res.length; i++) {
            text = res[i];
           substri = text.substr(6);
            var name ="schid_"+substri;
            var schname = $('#'+substri).val();
            console.log( schname );
            schedulenameexpression = schedulenameexpression.replace("schid_"+substri, $("#"+substri).val());
        }
         $('.idfield2').val(schedulenameexpression);
        }

    $('.idfield1').bind('keypress keyup blur propertychange', function() {
        getval();

});
});
});