我正在尝试设置一个我插入到输入字段中的值,并使用jQuery将其动态添加/放置到隐藏输入字段的值部分。我正在使用.val()和.change()方法的组合,这种方法有点工作但不完全。
这是我的简单HTML
<input id="service_amount" name="service_amount" type="text" value="" placeholder="Amount (example 29.00)"/>
<input id="pay_amount" name="amount" type="hidden" value="29.00"/>
这是我的JS
$(function(){
"use strict";
var myVal1 = $('#service_amount').val();
$(this).on('change', function(){
$('#pay_amount').val(myVal1);
});
});
因此,当我在#service_amount字段中输入一个值时,我需要将该值设置为#pay_amount隐藏字段的值。我知道已经为隐藏字段设置了一个值,但是如您所知,一旦设置了新值,就会删除它。
非常感谢您提供的帮助和建议。
答案 0 :(得分:0)
这里发生的事情是您正在侦听错误元素上的change
事件。
change
事件发生在非隐藏元素 - $('#service_amount')
上,因此您的更改处理程序应该在该元素上。
$(function(){
"use strict";
var serviceElem = $('#service_amount'); // caching the selector
// listen for change event on `$('#service_amount')`
serviceElem.on('change', function(){
// Extract the value within the change handler so you get
// the updated value.
// We can now use the `$(this)` variable since it points
// to the correct `$('#service_amount')` element within
// the event handler.
var myVal1 = $(this).val(); // could also be `serviceElem.val()`
$('#pay_amount').val(myVal1);
});
});