在jQuery 1.8.1中,当我使用下面的代码时,函数validateValue()被更新的值触发。在1.9.1中,它使用DOM中的第一个值,而不是输入的内容。任何解决方案还是这个?
function getValueFromInput() {
var inputElement = $('#value');
var dropdownElement = $('#currency');
inputElement.bind('change keydown keyup',function() {
var inputValue = $('#value').attr('value');
validateValue(inputValue);
});
dropdownElement.bind('change keydown keyup',function() {
validateValue(inputValue);
});
}
答案 0 :(得分:1)
而不是:
var inputValue = $('#value').attr('value');
我必须使用:
var inputValue = $('#value').val();
答案 1 :(得分:0)
也不要缓存该值,而是从DOM元素中找到它以反映最新的输入值。
dropdownElement.bind('change keydown keyup',function() {
//validateValue(inputValue);
validateValue($('#value').val());
});