我在页面上有一些文本输入,每个输入旁边都有一个按钮(还有<a>
)。单击时,我想将最接近的文本输入定位到被单击的<a>
,并将来自<a>
的文本添加到最接近的文本输入区域中,直到文本输入的末尾。我下面的代码确实将<a>
文本移到了上方,但是将点击的<a>
文本移到了所有文本输入中。你们好吗?我可以将其限制为仅与单击<a>
的实际最接近的文本输入吗?
$('#somestuff').on('click', 'a', function(){
var aTagText = $(this).text();
var textboxtext = $(this).parent().parent().find('input[type=text]').focus();
textboxtext.val(textboxtext.val() + aTagText );
textboxtext.focus();
});
谢谢!
答案 0 :(得分:2)
使用:first选择器,
var textboxtext = $(this).parent().parent().find('input[type=text]:first').focus();
此外,您也可以像这样缩短代码,
$('#somestuff').on('click', 'a', function(e){
e.preventDefault(); // use if href is specified in anchor tag, and the page is reloading
var aTagText = $(this).text();
$(this).parent().parent().find('input[type=text]:first')
.focus().val(function(index,value){
return value + aTagText;
});
});