提问人:Europeuser 提问时间:3/28/2023 最后编辑:Europeuser 更新时间:3/28/2023 访问量:46
JAVASCRIPT 如何以 ajax post 的格式创建多维数组
JAVASCRIPT How to create Multi-dimensional array in format for ajax post
问:
我需要这个 js 代码的帮助,该代码需要创建一个格式为多维 js 数组,稍后通过 ajax 发送。 从下表中,我需要收集每个客户所选服务的以下信息: 客户端 ID 作为数组的键,该数组将保存另一个具有选定service_id、client_price trener_bonus的数组 请注意,每个玩家的服务表可能超过 1 个。例如,客户可以命令使用 2 个 trener 一起训练,因此对于该玩家来说,将有第二个表,其中包含玩家可以选择的服务,这就是为什么每个播放器发球数组必须具有带有键trener_id的子数组,该子数组将保存每个 trener 的选定服务。
我的代码是:
var treners_services_list= new Array();
$(".player_row").each(function(){
var player_id = $(this).attr('data-client');
if(!treners_services_list['p'+player_id]) treners_services_list['p'+player_id] = [];
$('#treners_services_table_'+player_id).find('.service_check_group:checked').each(function(){
var sid = $(this).val();
var trener_id = $(this).attr('data-trener');
if(!treners_services_list['p'+player_id]['t'+trener_id]){
treners_services_list['p'+player_id]['t'+trener_id] = [];
}
treners_services_list['p'+player_id]['t'+trener_id].push({
service_id: sid,
client_price: $('#trener_client_price_'+sid).val(),
trener_bonus: $('#trener_bonus_price_'+sid).val()
});
})
})
console.log(treners_services_list);
我已经准备好了 jsfiddle,但是我正在生成的数组不会通过 ajax 发送。我尝试使用这个转换它:
var myArray = $.makeArray(treners_services_list);
但 Ajax 仍然不接受它。
您能否帮助我以正确的格式生成数组,但要保留上面所需的全部信息,谢谢
小提琴中的 js 代码生成了这个数组,该数组不被 ajax 接受。我尝试使用 JSON.stringify() 转换它,但它变为空:
答:
0赞
Europeuser
3/28/2023
#1
问题是我设置在顶部:
if(!treners_services_list['p'+player_id]) treners_services_list['p'+player_id] = [];
而不是:
if(!treners_services_list['p'+player_id]) treners_services_list['p'+player_id] = {};
感谢您的帮助!
评论