我正在尝试为我的网站建立自定义关键字字段,
事情是我有一个输入div持有人,我在其中通过单击按钮追加输入,但是我检查
$('div inputs').last().val().length < 3
如果小于3,我会摇晃输入,否则:
$('div inputs').last().after('<input type="text" />')
问题是:
$('div inputs').last().val()
总是返回第一个输入值,我在做什么错?
DEMO
最佳答案
您已将输入缓存在顶部,因此您始终使用同一组输入控件-一个。
在回调中定义您的输入变量,它将起作用:
$('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" />');
}
})