Javascript Jquery从输入字段中获取值,并在其他3个输入字段中显示它们
在下面的代码中,单击ok按钮时,它将在done输入字段中获取值,并显示在text1、text2、text3输入字段中。 问题是所有3列现在都获得相同的值(即hi100)。所需的结果是所有3列显示不同的结果,即hi100、hello100、sup100、, 我想知道我的代码出了什么问题。谢谢Javascript Jquery从输入字段中获取值,并在其他3个输入字段中显示它们,javascript,jquery,Javascript,Jquery,在下面的代码中,单击ok按钮时,它将在done输入字段中获取值,并显示在text1、text2、text3输入字段中。 问题是所有3列现在都获得相同的值(即hi100)。所需的结果是所有3列显示不同的结果,即hi100、hello100、sup100、, 我想知道我的代码出了什么问题。谢谢 if(字体组==“未定义”){ var set=$(“.text”).val(); } $(“.ok”)。在('click',function()上{ $(this.closest('tr').find(.
if(字体组==“未定义”){
var set=$(“.text”).val();
}
$(“.ok”)。在('click',function()上{
$(this.closest('tr').find(.text”).val(set+$(this.closest('tr').find(.done”).val());
});代码>
完成
text1hi
text2你好
text3up
这个
$(this).closest('tr').find(.text”).val(…)
将使用“text”类中找到的“first”元素的值。
因此,它将始终使用“hi”值
您需要做的是使用“text”类迭代所有元素。
e、 g
我希望我能帮上忙。这
$(this).closest('tr').find(.text”).val(…)
将使用“text”类中找到的“first”元素的值。
因此,它将始终使用“hi”值
您需要做的是使用“text”类迭代所有元素。
e、 g
希望我能帮上忙。将脚本更改为-
$(".ok").on('click', function() {
var set = $(this).closest('tr').find('.done').val();
if ( set ){
$(this).closest('tr').find('.text').each(function(){
$(this).val( $(this).val() + set );
})
}
});
将脚本更改为-
$(".ok").on('click', function() {
var set = $(this).closest('tr').find('.done').val();
if ( set ){
$(this).closest('tr').find('.text').each(function(){
$(this).val( $(this).val() + set );
})
}
});
尝试此操作,这将允许您将输入字段中的值设置到每个文本区域,它将记住每个的默认值。text
var obj=$('.text').map(函数(){
返回$(this.val())
})
$(“.ok”)。在('click',function()上{
var val=$(“.done”).val();
$('.text').map(函数(i,x){
$(this.val)(obj[i]+val);
})
});代码>
完成
text1hi
text2你好
text3up
尝试此操作,这将允许您将输入字段中的值设置到每个文本区域,它将记住每个的默认值。text
var obj=$('.text').map(函数(){
返回$(this.val())
})
$(“.ok”)。在('click',function()上{
var val=$(“.done”).val();
$('.text').map(函数(i,x){
$(this.val)(obj[i]+val);
})
});代码>
完成
text1hi
text2你好
text3up
下面的代码行将set
的值设置为$('.text')
返回的第一个元素的值,即在这种情况下hi
if (typeof set == "undefined") {
var set = $(".text").val();
}
因此,在javascript中使用以下代码:
此代码将函数用作.val()
的参数
它使用jQuery的.data()
方法存储.text
元素的初始值
因此,当您单击'.ok'
按钮时,.val
方法的函数参数检查初始值是否设置为.data
属性。如果不是,则将当前值作为初始值,并将其与'.done'
输入框中的值一起追加。如果已设置了.data
属性,则它将使用存储在.data
中的值,而不是当前值
$(.ok”)。在('click',function()上{
var doneValue=$(this.closest('tr').find('.done').val();
$(this).closest('tr').find('.text').val(函数(索引,值){
if($(this).data('value')==未定义){
$(此).data('value',value);
}否则{
value=$(this.data('value');
}
返回值+doneValue;
});
});代码>
完成
text1hi
text2你好
text3up
下面的代码行将set
的值设置为$('.text')
返回的第一个元素的值,即在这种情况下hi
if (typeof set == "undefined") {
var set = $(".text").val();
}
因此,在javascript中使用以下代码:
此代码将函数用作.val()
的参数
它使用jQuery的.data()
方法存储.text
元素的初始值
因此,当您单击'.ok'
按钮时,.val
方法的函数参数检查初始值是否设置为.data
属性。如果不是,则将当前值作为初始值,并将其与'.done'
输入框中的值一起追加。如果已设置了.data
属性,则它将使用存储在.data
中的值,而不是当前值
$(.ok”)。在('click',function()上{
var doneValue=$(this.closest('tr').find('.done').val();
$(this).closest('tr').find('.text').val(函数(索引,值){
if($(this).data('value')==未定义){
$(此).data('value',value);
}否则{
value=$(this.data('value');
}
返回值+doneValue;
});
});代码>
完成
text1hi
text2你好
text3up
谢谢。它在第一排运行良好,但在下一排无法运行,谢谢。第1行写得很好,但第二行写得不好,有什么想法吗非常感谢非常感谢你的详细解释非常感谢你的详细解释