gpt4 book ai didi

javascript - Uncaught Error : INVALID_CHARACTER_ERR: DOM Exception 5

转载 作者:行者123 更新时间:2023-11-30 08:07:59 27 4
gpt4 key购买 nike

$('form#update').submit(function(){
var _data = $(this).serializeArray();
var param = {};
$.map(_data,function(a,b){
if(a.name=='HotelName'){
param[a.name] = window.btoa(a.value);
}
else{
param[a.name] = a.value;
}
});
console.log(param);
$.post('api.coupon_edit_post.php',param,function(r){
coupons();
reloadMarkers();
});
return false;
});

是 window.btoa 导致了这个错误吗?

我正在使用 window.btoa,因此我可以传递大部分字符。

编辑: 我尝试了 MDN solution但它不工作。我使用的是 Google Chrome 版本 24.0.1312.57 m

最佳答案

错误肯定来自window.btoa

您应该修改 MDN 解决方案并在转换之前省略解码步骤,如下所示:

function utf8_to_b64( str ) {
return window.btoa(encodeURIComponent( str ));
}

function b64_to_utf8( str ) {
return decodeURIComponent(window.atob( str ));
}

这会从编码字符串创建 b64 字符串,而不是再次对其进行解码(这将再次创建符号,btoa 无法处理)。现在这个工作:

utf8_to_b64('✓ à la mode');
b64_to_utf8("JUUyJTlDJTkzJTIwJUMzJUEwJTIwbGElMjBtb2Rl");

当然,由于编码,这会显着延长 b64 字符串。

您现在可以修改示例:

param[a.name] = utf8_to_b64(a.value);

关于javascript - Uncaught Error : INVALID_CHARACTER_ERR: DOM Exception 5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14829374/

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