Событие отправлено, браузер просто не реагирует на него (т.е. вставляет символы в текстовое поле)
Не все браузеры (о которых я знаю) позволяют вам отправлять события, а не просто инициировать их. Но даже это далеко не идеально
// Gecko only
$("#first").keypress(function(event)
{
var evt = document.createEvent('KeyEvents');
evt.initKeyEvent(
event.type
, event.bubbles
, event.cancelable
, event.view
, event.ctrlKey
, event.altKey
, event.shiftKey
, event.metaKey
, event.keycode
, event.charCode
);
$('#second')[0].dispatchEvent( evt );
});
Попробуйте этот пример, и вы поймете, что я имею в виду под тем, как он далек от совершенства. По сути, способ сделать то, что вы просите, - это также способ, которым вы говорите, что не можете - по значению.
Однако вы можете передавать пользовательские данные вместе с событием, что приводит к решению, которое выглядит следующим образом
$("#first").bind( 'keyup change', function(event)
{
$('#second').trigger( 'mimic', $(this).val() );
});
$("#second").bind( 'mimic', function( event, value )
{
$(this).val( value );
})
Это достаточно хорошо?