2013-05-01 6 views
0

Im пытаюсь использовать JQuery .Кнопку функцию, чтобы получить значение поля ввода:JQuery - прохождение поля ввода для скрытого значения входного

<input type="text" name="qty2" id="qty2" maxlength="12" title="QtyField" class="input-text qty2"> 

, чтобы применить его к значению другого поля

<input type="text" name="qty" id="qty" maxlength="12" value="" title="Qty" class="input-text qty"> 

до сих пор Ивер используется:

 $("#qty2.input-text.qty2").keyup(function(){ 
    value = $("#qty2.input-text.qty2").val(); 
    $("#qty.input-text.qty").html(value); 
}); 

И не повезло.

Заранее благодарен!

ответ

0

Метод `jQuery.change() не может« получить значение поля ввода ».

Выдержка из документации:
«Bind обработчик события к событию„изменение“событие JavaScript, или вызывает данное событие на элемент»

Использование jQuery.val(). Вот несколько вариантов ...

$('#qty2').bind("keyup", function() { 
    var val = $(this).val(); 
    $('#qty').val(val); 
}); 

См this working fiddle

Единственным недостатком этого метода является то, что он не будет активно обновлять, пока ключ не будет «UP», так что если вы держите H вниз, то второй ящик не будет обновлен, пока вы не отпустите клавишу.

В качестве альтернативы jQuery.change() не обновляется до тех пор, пока поле не покинет фокус. see this jfiddle

+0

Благодаря получил это работает! Jsfiddle очень помог! – Gerardo

0

Чтобы изменить значение на входе , вы должны использовать $ .val() вместо $ .html().

$('#qty2').change(function(){ 
    $('#qty').val($(this).val()); 
}); 
0

Просто попробуйте это:

$("#qty2").change(function(){ 
    value = $(this).val(); 
    $("#qty").val(value); 
}); 

Кстати, когда у вас есть ID нет необходимости добавлять что-нибудь еще, чтобы ваши селекторов, как и идентификаторы должны быть уникальными в любом случае ...

0

вам просто нужно использовать .val() вместо .html():

$("#qty2").keyup(function(){ 
    value = $("#qty2").val(); 
    $("#qty").val(value); 
    }); 

скрипку: http://jsfiddle.net/YER9b/