gpt4 book ai didi

JavaScript (JQuery) 更改参数名称

转载 作者:行者123 更新时间:2023-11-29 10:52:11 24 4
gpt4 key购买 nike

是否可以更改 JavaScript 对象中的参数名称?

我的问题是 JQuery AutoComplete 对参数名称非常挑剔,需要参数名称标签或值。

我的数据对象。

data....
data.receivers[].id
data.receivers[].name
data....

我想做的是制作一个别名/引用或类似的概念。

data.receivers[].label = data.receivers[].name

所以我想将参数从名称更改为标签。我已经这样做了,但我不喜欢复制我认为 .map 所做的数据。

var callBack = function(data) {
var autoCompleteData = jQuery.map(data.receivers, function(receiver, i){
return {label: receiver.name, id: receiver.id };
});

$("input#reciever").autocomplete({
source: autoCompleteData,
focus: function(event, receiver) {
$("input#reciever").val(receiver.item.label);
return false;
},
select: function(event, receiver) {
$("input#reciever").val(receiver.item.label);
$("input#recieverId").val(receiver.item.id);
return false;
}

});
}

附言。我可以更改从我的服务器返回的 JSON 数据,但我想保持名称的逻辑性和直观性,而不是被迫根据 JQuery 的约束按数据对象建模。

最佳答案

如果您想就地更新您的对象集合,您可以使用 $.each()而不是 $.map():

$.each(data.receivers, function() {
this.label = this.name;
delete this.name;
});

$("input#reciever").autocomplete({ // suggest $("#receiver") instead
source: data.receivers,
// ...
});

关于JavaScript (JQuery) 更改参数名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8123672/

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