我正在尝试为我的网站构建自定义关键字字段,
问题是我有一个输入 div 支架,我通过单击按钮附加输入,但我检查
$('div inputs').last().val().length < 3
如果它小于 3 我摇动输入,否则:
$('div inputs').last().after('<input type="text" />')
问题是:
$('div 输入').last().val()
总是返回第一个输入值,我做错了什么?
最佳答案
您已将输入缓存在顶部,因此您始终使用同一组输入控件 - 一个。
在回调中定义您的输入变量,它将起作用:
$('body').on('click','#addkey',function(e){
var inputs = $('#keysInput input');
if(inputs.last().val().length < 3){
$('#keysInput input').last().effect("shake", { times:1, distance: -5 }, 300);
}else{
console.log(inputs.last().val());
$('#keysInput input').last().after('<input type="text" placeholder="type another keyword" />');
}
})
关于javascript - 意外的 jquery .last() 行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10955867/