Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 数组差异和更新值的更改_Javascript_Jquery - Fatal编程技术网

Javascript 数组差异和更新值的更改

Javascript 数组差异和更新值的更改,javascript,jquery,Javascript,Jquery,我有两个数组,从中我将动态输入字段生成为两个不同的div,如下所示 因此,一旦创建了输入字段,用户就可以在divone或divtwo中更改输入字段内的值。 如果您注意到divone和divtwo在本例中可能具有相同的输入字段firstname,值为“john” 如何检查firstname的值在divone或divtwo中是否已更改? 如果firstname的值在divone或divtwo中发生了更改,并且该值比我将其值提交时的值为最新值,则我可能有多个类似的字段集,我需要在所有类似的字段集上执行

我有两个数组,从中我将动态输入字段生成为两个不同的
div
,如下所示

因此,一旦创建了输入字段,用户就可以在
div
one或
div
two中更改输入字段内的值。 如果您注意到
div
one和
div
two在本例中可能具有相同的输入字段
firstname
,值为“john”

如何检查firstname的值在
div
one或
div
two中是否已更改? 如果firstname的值在
div
one或
div
two中发生了更改,并且该值比我将其值提交时的值为最新值,则我可能有多个类似的字段集,我需要在所有类似的字段集上执行此操作

所以我将提交

var finaldata= {firstname:"abraham", lastname:"Doe" ,age:46, address:"newyork" ,mobile:"04126562356"} 
var arrayone = {firstName:"John", lastName:"Doe", age:46};
var arraytwo = {firstName:"John", address:"newyork",mobile:"04126562356"};
然后我将遍历
arrayone
,并将其值输出到
div

<div id="arrayone_panel">
   <input type="text" name="firstname" value="John">
   <input type="text" name="lastname" value="Doe">
   <input type="text" name="age"  value="46">
</div>
<div id="arraytwo_panel">
   <input type="text" name="firstname" value="John">  
   <input type="text" name="address" value="newyork">
   <input type="text" name="mobile" value="04126562356">
</div>

您可以将事件侦听器分别附加到两个输入,然后从各自的事件处理程序获取提交值,如下所示:

$("#arrayone_panel").on('input', "[name='firstname']",function({
    //code..

}))


$("#arraytwo_panel").on('input', "[name='firstname']",function({
    //code..

}))

这些是对象而不是数组,而您要做的是,这没有多大意义,但我认为您正在尝试重现angular
数据绑定
。尝试为每个对象设置一个id,并使用数据属性将id映射到该对象,这样每当输入字段更改时,都可以使用id搜索并更改相应的对象。如果firstname两者都更改了怎么办?谢谢xotic在这种情况下,用户只会更改1的值。谢谢manish的想法。好的,所以显示两个,但禁用一个,这样只能对启用的一个进行更改。您的第三个DB是两个数据集的合并,对吗?很好,但我需要为所有输入附加事件侦听器,以监视输入是否已更改,如果已更改,则获取这些值。我认为曼尼什人的答案是接近我试图做的事情,但我对映射没有任何线索。尝试为每个对象设置一个id,并使用数据属性将id映射到该对象,以便在输入字段更改时使用id搜索并更改相应的对象。