gpt4 book ai didi

Jquery 数组查找并替换部分匹配的条目

转载 作者:行者123 更新时间:2023-12-01 07:07:08 25 4
gpt4 key购买 nike

我有一个像这样的数组,其中包含如下数据:[mode:id:A:B]

例如:

["del:123456789:0:0", "del:99887766:0:0", "edit:1471872633890:8845:0"]

无论如何,我可以检查并查看 ID 上是否存在部分匹配,然后删除然后输入并替换它?

例如:

匹配1471872633890并将整个条目匹配替换为edit:1471872633890:8845:NE,因此数组变为:

["del:123456789:0:0", "del:99887766:0:0", "edit:1471872633890:8845:NW"]

顺便说一句...您可以序列化一个数组以进行 ajax 发布吗?如果不是,我无论如何都需要重新考虑这个!

谢谢

更新我正在尝试更新现有的数组条目或添加新条目。

这就是我所拥有的...

    var id = $(this).closest('tr').find('input[name="id[]"]').val()
var A = $(this).closest('tr').find('input[name="A[]"]').val()
var B = $(this).closest('tr').find('input[name="A[]"]').val()
var res = 'edit:' + id + ':' + A + ':' + B;

filters = filters.map(function(value) {
if( value.indexOf(id) > -1 ) {
return res;
}
return value;
});

如何实际更新数组中的值?

最佳答案

在这种情况下我会使用map。您甚至可以使用另一个循环,但在这种情况下很容易处理,而且我喜欢这种行为。只需在内部进行搜索并返回新值即可。

var arr = ["del:123456789:0:0", "del:99887766:0:0", "edit:1471872633890:8845:0"];

arr = arr.map(function(value) {
if( value.indexOf("1471872633890") > -1 ) {
return "edit:1471872633890:8845:NW";
}

return value;
});

console.log(arr);

或者,如果您愿意,可以使用 for 循环:

var arr = ["del:123456789:0:0", "del:99887766:0:0", "edit:1471872633890:8845:0"];

for( var i = 0; i < arr.length; i++ ) {
if( arr[i].indexOf("1471872633890") > -1 ) {
arr[i] = "edit:1471872633890:8845:NW";
}
}

console.log(arr);

如果您使用 jQuery ajax,则无需序列化数组。您可以使用 data 属性发送它们。

var arr = ["del:123456789:0:0", "del:99887766:0:0", "edit:1471872633890:8845:0"];

$.ajax({
url: "foo.php",
method: "post",
data: {
myArray: arr
}
});

关于Jquery 数组查找并替换部分匹配的条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39081661/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com