亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Ajax成功事件不起作用

Ajax成功事件不起作用

慕標琳琳 2019-12-27 09:17:43
我有一個注冊表,正在使用$.ajax它提交。這是我的AJAX請求:$(document).ready(function() {    $("form#regist").submit(function() {        var str = $("#regist").serialize();        $.ajax({            type: 'POST',            url: 'submit1.php',            data: $("#regist").serialize(),            dataType: 'json',            success: function() {                $("#loading").append("<h2>you are here</h2>");            }                });        return false;            });});在我的Submit1.php文件中,我檢查數據庫中是否存在電子郵件地址和用戶名字段。如果這些值存在而沒有頁面刷新,則希望顯示一條錯誤消息。如何將其添加到我的AJAX請求的成功回調中?
查看完整描述

3 回答

?
HUH函數

TA貢獻1836條經驗 獲得超4個贊

結果可能不是JSON格式,因此當jQuery嘗試如此解析時,它將失敗。您可以使用error:回調函數捕獲錯誤。


無論如何,您似乎都不需要在該函數中使用JSON,因此您也可以刪除該dataType: 'json'行。


查看完整回答
反對 回復 2019-12-27
?
繁花不似錦

TA貢獻1851條經驗 獲得超4個贊

盡管問題已經解決,但我希望可以為他人提供幫助。


我犯了一個錯誤,試圖直接使用這樣的函數(成功:OnSuccess(productID))。但是您必須先傳遞一個匿名函數:


  function callWebService(cartObject) {


    $.ajax({

      type: "POST",

      url: "http://localhost/AspNetWebService.asmx/YourMethodName",

      data: cartObject,

      contentType: "application/x-www-form-urlencoded",

      dataType: "html",

      success: function () {

        OnSuccess(cartObject.productID)

      },

      error: function () {

        OnError(cartObject.productID)

      },

      complete: function () {

        // Handle the complete event

        alert("ajax completed " + cartObject.productID);

      }

    });  // end Ajax        

    return false;

  }

如果不使用匿名函數作為包裝器,則即使Web服務返回異常,也會調用OnSuccess。


查看完整回答
反對 回復 2019-12-27
?
米琪卡哇伊

TA貢獻1998條經驗 獲得超6個贊

我嘗試刪除dataType行,但它對我不起作用。我通過使用“ complete”而不是“ success”作為回調來解決此問題。在IE中,成功回調仍然失敗,但是由于我的腳本可以運行并完成,所以我只關心它。


$.ajax({

    type: 'POST',

    url: 'somescript.php',

    data: someData,

    complete: function(jqXHR) {

       if(jqXHR.readyState === 4) {

          ... run some code ... 

       }   

    }        

 });

在jQuery 1.5中,您也可以這樣做。


var ajax = $.ajax({

    type: 'POST',

    url: 'somescript.php',

    data: 'someData'

});

ajax.complete(function(jqXHR){

    if(jqXHR.readyState === 4) {

        ... run some code ... 

    }

});


查看完整回答
反對 回復 2019-12-27
  • 3 回答
  • 0 關注
  • 771 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號