Javascript 获取$this的选择器
我基本上是试图复制我的选择器并创建一个新的。。这就是我想要实现的 我在divone中有很多输入,不想在jquery中列出每个输入,所以我想动态查找对象并链接到相应的divtwo对象Javascript 获取$this的选择器,javascript,jquery,html,Javascript,Jquery,Html,我基本上是试图复制我的选择器并创建一个新的。。这就是我想要实现的 我在divone中有很多输入,不想在jquery中列出每个输入,所以我想动态查找对象并链接到相应的divtwo对象 <div id="divOne"> <input type="textbox" id="tb1" value="TEXTHERE"> <input type="textbox" id="tb2" value="TEXTHERE"> </div> <div id="
<div id="divOne">
<input type="textbox" id="tb1" value="TEXTHERE">
<input type="textbox" id="tb2" value="TEXTHERE">
</div>
<div id="divTwo">
<input type="textbox" id="tb3" value="TEXTHERE">
<input type="textbox" id="tb4" value="TEXTHERE">
</div>
$("#divOne:input").bind("keyup change", function(e) {
var selector = ($(this).selector()); //hoping this would return input object from DivOne
var value = ($(this).val());
var newselector = //modify divOne object to have divTwo selector
$(newselector).val() = value;
});
谢谢据我所知,您希望将第一个div中输入的值复制到第二个div中相应的输入
$("#divOne input").on("keyup",function(e) {
$("#divTwo input:eq("+$(this).index()+")").val(($(this).val()));
});
因此,必须使用index()
首先查找输入的索引,然后在选择器中使用:eq
仅匹配第二个div中的相应输入
$("#divOne input").on("keyup",function(e) {
$("#divTwo input:eq("+$(this).index()+")").val(($(this).val()));
});
根据我的理解,你想将第一个div中输入的值复制到第二个div中相应的输入,请检查此小提琴
$("#divOne input").on("keyup",function(e) {
$("#divTwo input:eq("+$(this).index()+")").val(($(this).val()));
});
因此,必须使用index()
首先查找输入的索引,然后在选择器中使用:eq
仅匹配第二个div中的相应输入
$("#divOne input").on("keyup",function(e) {
$("#divTwo input:eq("+$(this).index()+")").val(($(this).val()));
});
选中此小提琴如果要匹配相应的元素,可以使用
index()
和eq()
如果要匹配相应的元素,可以使用
index()
和eq()
正如您试图做的,第二个输入上的更改与第一个div上的更改一样;你可以试试-
$(document).on('keyup chage','#divOne input',function(){
// will gives index of divone input while keyup or change event occurs
$index=$('#divOne input').index($(this));
// selects input from #divTwo in array from
$divtwoinputs=$('#divTwo input');
// now reflect the value on #divtwo inputs
$($divtwoinputs[$index]).val($(this).val());
});
希望这能解决你的问题,如果没有请让我知道。。。如果解决了您的问题,请接受此作为答案…因为您试图做的是将第二个输入更改为第一个div上的更改;你可以试试-
$(document).on('keyup chage','#divOne input',function(){
// will gives index of divone input while keyup or change event occurs
$index=$('#divOne input').index($(this));
// selects input from #divTwo in array from
$divtwoinputs=$('#divTwo input');
// now reflect the value on #divtwo inputs
$($divtwoinputs[$index]).val($(this).val());
});
希望这能解决你的问题,如果没有请让我知道。。。如果解决了您的问题,请将此作为答案…如何使用
输入
事件和.index()
方法,如下所示:
$('#divOne > :input').on('input', function() {
var index = $(this).index();
$('#divTwo > :input').eq( index ).val( this.value );
});
$('divOne>:input')。在('input',function()上{
var index=$(this.index();
$('#divTwo>:input').eq(index).val(this.value);
});代码>
挑选
1.
2.
挑选
1.
2.
如何使用输入
事件和.index()
方法,如下所示:
$('#divOne > :input').on('input', function() {
var index = $(this).index();
$('#divTwo > :input').eq( index ).val( this.value );
});
$('divOne>:input')。在('input',function()上{
var index=$(this.index();
$('#divTwo>:input').eq(index).val(this.value);
});代码>
挑选
1.
2.
挑选
1.
2.
它是$(这个)。选择器
,你永远不应该真正需要它,因此它是一个内部未记录的属性。当我对$(这个)发出警报时。选择器的空白@adeneo将有助于你更具体地了解你想要发生的事情。尝试用更新的问题@charlietflIt的$(这个)解释。选择器
,你永远不会真正需要它,因此它为什么是一个内部未记录的属性。当我对$(this)发出警报时。如果你更具体地说明你想要发生什么,选择器的空白@adeneo会有所帮助。尝试用更新的问题@charlietfl解释这是否只有在我每个div有一个文本框的情况下才有效?因为我的div每个都有很多输入,而且每个都有相同的数量。更新了问题中的html。只有当我每个div有一个文本框时,这才有效吗?因为我的div每个都有很多输入,而且每个都有相同的数量。更新了问题中的html。这是有效的,但是如果我添加了dropdownlist呢。这是一个输入,但我不需要键控和更改吗?这很有效,但如果我添加了一个下拉列表呢。这是一个输入,但我不需要按键和更改吗?