jQuery Ajax仅在Safari中失败,但其他浏览器正在运行

时间:2018-04-13 01:51:49

标签: javascript jquery ajax

我有一个javascript函数来调用ajax将一些东西写入数据库。到目前为止它已经在chrome和firefox上工作没有任何问题。然而,Safari没有太多线索随机失败。 (这是在localhost中测试的)

这是错误:

write failed : {"readyState":0,"status":0,"statusText":"error"}

这是我的ajax功能:

function writeToDB() {
      var data = {
        setting: 'some data'
      } ; 

    $.ajax({
        type: "POST",
        url: 'Admin/write_to_db',                    
        data: {
            data: 
       btoa(unescape(encodeURIComponent(JSON.stringify(data))))
        },                    
        success: function(response) {
            consoe.log('success');    
            console.log('response : ' + JSON.stringify(response));                              
        },
        error: function(response) {

            console.log('write failed : ' + 
        JSON.stringify(response));

        },
        complete: function(response) {
            console.log('completed');
        },        
    });

   }

我简化了实际功能以便于阅读。我已经尝试过针对类似问题的许多类似响应,但没有任何效果。请帮我解决这个问题。谢谢。

1 个答案:

答案 0 :(得分:0)

管理以解决问题。 上面的函数writeToDB由按钮单击触发。所以我所要做的就是添加       event.preventDefault() 到功能。那很有效!