我已经呆了好几天了...有人能告诉我为什么即使在iOS上也可以工作吗...
var setlist = {};
setlist['title'] = $(target).val();
setlist['ID'] = $(target).attr('data-setlist');
$.ajax({
url: "_store_title.php",
type: "post",
data: setlist,
success: function(response) {
location.reload();
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown);
}
});
…但不是:
var songData = {};
songData['songID'] = $(target).find('[name="songID"]').val();
songData['setlistID'] = $(target).attr('data-setlist');
$.ajax({
url: "_add_song.php",
type: "post",
data: songData,
success: function(response) {
location.reload();
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown);
}
});
.php文件将提交的数据存储在数据库中。该代码可以在除我的iPhone(iOS 12.1.4)之外的所有设备上完美运行。
在进行测试和研究时,我发现“ setlist”和“ songData”具有正确的数据(即使在我的iPhone上)。这似乎是我的iPhone拒绝执行的ajax调用。
我当然知道关于iOS上ajax的奇怪缓存问题。麻烦的是,该问题的解决方案都不适合我。真正令我感到困惑的是,“ setlist”代码的工作原理没有任何问题,而“ song”代码的工作却完全无法工作。
我错过了完全愚蠢的东西吗?还是像我想的那样奇怪?有什么想法吗?