Jquery 遍历DOM并将值插入<;输入/>;
复制粘贴需要很多代码,所以这里有一个 关注任何输入,按钮出现:Jquery 遍历DOM并将值插入<;输入/>;,jquery,insert,traversal,Jquery,Insert,Traversal,复制粘贴需要很多代码,所以这里有一个 关注任何输入,按钮出现: $('input').focus(function () { var $this = $(this); $this.closest('p').after($( ".specialCharactersWrap" )); }); 然后单击,按钮的文本将插入到输入中: $('.specialCharactersWrap button').click(function() { v
$('input').focus(function () {
var $this = $(this);
$this.closest('p').after($( ".specialCharactersWrap" ));
});
然后单击,按钮的文本将插入到输入中:
$('.specialCharactersWrap button').click(function() {
var $this = $(this);
var value = $(this).text();
var input = $('.FillIn .FillInInput');
input.val(input.val() + value);
return false;
});
问题:它将插入所有输入。我需要它插入到上面的一个单曲中(这是聚焦的)。尝试使用closest()
遍历DOM,但不起作用,它会中断,我在此处的尝试失败==>
如何将按钮文本集中到单个输入中?我做错了什么?
谢谢。试着改变一下
var input = $('.FillIn .FillInInput');
致:
试试这个
$('input').focus(function () {
var $this = $(this);
$this.closest('p').after($( ".specialCharactersWrap" ));
$('.FillInInput').closest('p').removeClass('focussed');
$this.closest('p').addClass('focussed');
// alert('test');
});
$('.specialCharactersWrap button').click(function() {
var $this = $(this);
var value = $(this).text();
var input = $('.FillIn').find('.focussed').find('.FillInInput');
input.val(input.val() + value);
return false;
});
我在输入焦点上添加了一个类,然后在单击按钮时使用它
或者您也可以使用user.prev()试试这个
伙计们,答案都一样清楚+有用+有效。我投票支持所有人,谢谢。但我只能选择一个答案。我选择Felix's是因为它最接近我想要做的。谢谢大家。在尝试将多个s放入一个中后,我意识到该函数会将按钮文本插入到该的所有s中。你的解决方案没有。所以这是对我来说最合适的,谢谢:)
$('input').focus(function () {
var $this = $(this);
$this.closest('p').after($( ".specialCharactersWrap" ));
$('.FillInInput').closest('p').removeClass('focussed');
$this.closest('p').addClass('focussed');
// alert('test');
});
$('.specialCharactersWrap button').click(function() {
var $this = $(this);
var value = $(this).text();
var input = $('.FillIn').find('.focussed').find('.FillInInput');
input.val(input.val() + value);
return false;
});
var $that = this // here my change
$('input').focus(function () {
var $this = $(this);
$that = $(this);// here my change
$this.closest('p').after($( ".specialCharactersWrap" ));
// alert('test');
});
$('.specialCharactersWrap button').click(function() {
var $this = $(this);
var value = $(this).text();
var input = $that;// here my change
input.val(input.val() + value);
return false;
});