2012-04-01 88 views
0

我有一种形式这一领域的变化值:jQuery的 - 输入

<input type="text" name="promocode" id="promoCode" value="" style="width:24%" maxlength="5"> 

和这个领域的另一种形式:

<input type="hidden" name="custom" class="promo" value="" /> 

我该怎么办,所以每当值#promoCode被改变了,它也会改变值.promo

currenlty,我有这个:

var promo = $("#promoCode").val(); 
$("#promoCode").change(function(){ 
    $('.promo').val(promo);  
}); 

但这并不奏效。

+0

是你的代码包装在一个DOM准备回调? – FreeCandies 2012-04-01 13:46:31

+0

或许''echo'应该是'.promo'或'input [name =“custom”]''。 – Engineer 2012-04-01 13:46:49

+0

@工程师。你在哪看到'#echo'? – gdoron 2012-04-01 13:51:54

回答

3
$(function(){ 
    $("#promoCode").change(function(){ 
     $('.promo').val(this.value);  
    }); 
}); 
  • 确保DOM准备就绪时,您将您的回调来改变事件
  • this内的回调是事件附属的元素。
  • 如果您缓存#promoCode值以外的更改回调,它将在第一次更改后不同步!就像我一样,在回调中使用this.value