ホームページ  >  記事  >  ウェブフロントエンド  >  Ajax はどのように応答を通じてバックグラウンドでデータを渡しますか? (コード付き)

Ajax はどのように応答を通じてバックグラウンドでデータを渡しますか? (コード付き)

php中世界最好的语言
php中世界最好的语言オリジナル
2018-03-31 10:52:392674ブラウズ

今回は、Ajax がレスポンスを通じてバックグラウンドでデータを送信する方法を説明します。 (コードが添付されています)、Ajax が応答を通じてバックグラウンドでデータを転送するための 注意事項 は何ですか? ここで実際のケースを見てみましょう。

これはJSコードです:

var System = { 
  getHttpRequest: function(url, callback, options) { 
    if (url.length < 0) return; 
    var option = { 
      url: url, 
      type: "get", 
      dataType: "json", 
      cache: false, 
      timeout: 30000, 
      beforeSend: function(XHR) { 
      }, 
      complete: function(XHR, textStatus) { 
        XHR.abort(); 
      }, 
      error: function(XMLHttpRequest, textStatus, errorThrown) { 
        //alert("网络连接不通,请稍后再试!"); 
      }, 
      success: function(data) { 
        callback(data, options); 
      } 
    }; 
    if ( !! options) { 
      option = $.extend(option, options); 
    } 
    $.ajax(option); 
  } 
};

コールバック関数成功を通じてデータを取得したいとき、最初はバックグラウンドで直接jsonstringを返します。結果はメソッドを定義せずに例外になります。後で調べたところ、データを正常に取得するには、response.getWriter().write() メソッドを通じてデータを書き込む必要があることがわかりました。バックグラウンド コードは次のとおりです。

public String getRejectReason() throws Exception{ 
    String rowId = getParameterAndPut("rowId",null,0).toString(); 
    String jsonData = ""; 
    if (StringUtils.isNotEmpty(rowId)) { 
      jsonData = newOwnerInfoService.getRejectReasonJsonData(rowId); 
    } 
    this.getResponse().setCharacterEncoding("utf-8"); 
    this.getResponse().getWriter().write(jsonData); 
    return null; 
}

概要

この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、PHP 中国語 Web サイトの他の関連記事に注目してください。

推奨書籍:

CORS を使用して WebApi Ajax クロスドメイン リクエストを実装する方法

Ajax がコンボ ボックスの動的読み込みを実装する方法 (コード付き)

以上がAjax はどのように応答を通じてバックグラウンドでデータを渡しますか? (コード付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。