検索
ホームページウェブフロントエンドjsチュートリアルJquery での $.post と $.ajax の使用法の概要

Jquery の $.ajax の使用:

jQuery.ajax( options ): HTTP リクエストを通じてリモート データをロードします。これは、jQuery の基礎となる AJAX 実装です。 。シンプルで使いやすい高レベルの実装については、$.get、$.post などを参照してください。

$.ajax() は、作成した XMLHttpRequest オブジェクトを返します。ほとんどの場合、このオブジェクトを直接操作する必要はありませんが、特殊な場合には、リクエストを手動で終了するために使用できます。

注: dataType オプションを指定する場合は、サーバーが正しい MIME 情報を返すことを確認してください (例: xml は "text/xml" を返します)。 MIME タイプが正しくないと、予期しないエラーが発生する可能性があります。 「AJAX リクエストのデータ型の指定」を参照してください。

データ型が「script」に設定されている場合、すべてのリモート (同じドメインにない) POST リクエストは GET に変換されます。

$.ajax() にはパラメーターが 1 つだけあります: パラメーター キー/値オブジェクト (各設定とコールバック関数の情報が含まれます)。以下の詳細なパラメータ オプションを参照してください。

jQuery 1.2 では、ドメインを越えて JSON データを読み込むことができます。これを使用する場合は、データ型を JSONP に設定する必要があります。 「myurl?callback=?」などの JSONP 形式を使用して関数を呼び出す場合、jQuery はコールバック関数を実行するために ? を正しい関数名に自動的に置き換えます。データ型が「jsonp」に設定されている場合、jQuery は自動的にコールバック関数を呼び出します。 (よくわかりません)

jquery ajax パラメータリスト:

url(String)

(デフォルト: 現在のページのアドレス) リクエストを送信するアドレス。

type(String)
リクエストメソッド (「POST」と「GET」の 2 つのパラメータがあります)、デフォルトは「GET」です。注: PUT や DELETE などの他の HTTP リクエスト メソッドも使用できますが、一部のブラウザでのみサポートされています。

timeout(Number)

リクエストのタイムアウト(ミリ秒)を設定します。この設定はグローバル設定をオーバーライドします。

async(Boolean)

(デフォルト: true) true に設定すると、すべてのリクエストは非同期リクエストになります。同期リクエストを送信する必要がある場合は、このオプションを false に設定します。同期リクエストはブラウザをロックするため、ユーザーはリクエストが完了するまで他の操作を実行する必要があることに注意してください。

beforeSend(Function)

カスタム HTTP ヘッダーの追加など、リクエストを送信する前に XMLHttpRequest オブジェクトの関数を変更できます。 XMLHttpRequest オブジェクトが唯一のパラメータです。

コードは次のとおりです。
function(XMLHttpRequest){ this; // the options for this ajax request}
cache(Boolean)

リクエスト結果をキャッシュするかどうか (デフォルト) : true)、 false に設定すると、ブラウザのキャッシュからリクエスト情報が読み込まれなくなります。開発の初期段階では false に設定するのが最善です。そうしないと、デバッグに不便になります。

complete(Function)

リクエスト完了後のコールバック関数 (リクエストが成功または失敗したときに呼び出されます)。パラメータ: XMLHttpRequest オブジェクト、成功情報文字列。

コードは次のとおりです。
function(XMLHttpRequest,textStatus){
 this;//theoptionsforthisajaxrequest
}

contentType(String)

(デフォルト: " application/x-www-form-urlencoded") サーバーに情報を送信するときのコンテンツ エンコード タイプ。デフォルト値はほとんどのアプリケーションに適しています。

data(Object,String)

サーバーに送信されたデータ。リクエスト文字列形式に自動的に変換されます。 GET リクエストの URL に追加されます。この自動変換を無効にするには、processData オプションの説明を参照してください。キー/値形式である必要があります。配列の場合、jQuery は異なる値に同じ名前を自動的に割り当てます。たとえば、{foo:["bar1", "bar2"]} は '&foo=bar1&foo=bar2' に変換されます。

dataType(String)

サーバーから返されるデータ型を定義します。指定しない場合、jQuery は HTTP パケットの MIME 情報に基づいて responseXML または responseText を自動的に返し、それをコールバック関数のパラメーターとして渡します。
"xml": jQuery で処理できる XML 形式のデータを返します。
"html": プレーンテキストの HTML 形式データを返します。スクリプト要素を含めることができます。
"script": プレーンテキストの JavaScript コードを返します。結果は自動的にキャッシュされません。
"json": JSON データを返します。
「jsonp」: JSONP 形式。 「myurl?callback=?」などの JSONP 形式を使用して関数を呼び出す場合、jQuery はコールバック関数を実行するために ? を正しい関数名に自動的に置き換えます。

error(関数)

(デフォルト:自動判定(xmlまたはhtml)) リクエストが失敗した場合にこのメソッドが呼び出されます。このメソッドは、XMLHttpRequest オブジェクト、エラー メッセージ、および (おそらく) キャプチャされたエラー オブジェクトの 3 つのパラメータを取ります。

コードは次のとおりです

function(XMLHttpRequest,textStatus,errorThrown){
 //通常情况下textStatus和errorThown只有其中一个有值
 this;//theoptionsforthisajaxrequest
}

global(Boolean)

是否触发全局 AJAX 事件(默认: true) 。设置为 false 将不会触发全局 AJAX 事件,如 ajaxStart 或 ajaxStop 。可用于控制不同的Ajax事件

ifModified(Boolean)

(默认: false) 仅在服务器数据改变时获取新数据。使用 HTTP 包 Last-Modified 头信息判断。

processData(Boolean)

设置发送数据的信息格式(默认: true),设置为 true 的时候发送的数据将被转换为对象(技术上讲并非字符串) 以配合默认内容类型 "application/x-www-form-urlencoded"。如果要发送 DOM 树信息或其它不希望转换的信息,请设置为 false。

success(Function)

请求成功后回调函数。这个方法有两个参数:服务器返回数据,返回状态

代码如下:

function(data,textStatus){ 
 //datacouldbexmlDoc,jsonObj,html,text,etc... 
 this;//theoptionsforthisajaxrequest 
}

下面以一则示例解释一下该方法的具体的用法:

$.ajax({ 
  type:'get', 
  url:'http://www.www.daimajiayuan.com/rss', 
  beforeSend:function(XMLHttpRequest){ 
    //ShowLoading(); 
  }, 
  success:function(data,textStatus){ 
    $('.ajax.ajaxResult').html(''); 
    $('item',data).each(function(i,domEle){ 
      $('.ajax.ajaxResult').append(''+$(domEle).children('title').text()+''); 
    }); 
  }, 
  complete:function(XMLHttpRequest,textStatus){ 
    //HideLoading(); 
  }, 
  error:function(){ 
    //请求出错处理 
  } 
});

Jquery的$.post的用法:

3. jQuery.post( url, [data], [callback], [type] ) :使用POST方式来进行异步请求
jquery $.post 方法参数列表(说明):
url (String) : 发送请求的URL地址.
data (Map) : (可选) 要发送给服务器的数据,以 Key/value 的键值对形式表示,可将此值放到url中。
callback (Function) : (可选) 载入成功时回调函数(只有当Response的返回状态是success才能调用该方法)。
 
type (String) : (可选)客户端请求的数据类型(JSON,XML,等等)
 
这是一个简单的 POST 请求功能以取代复杂 $.ajax ,请求成功时可调用回调函数。如果需要在出错时执行函数,请使用 $.ajax。
下面是一个使用$.post的简单示例代码:

$.post( 
  'http://www.daimajiayuan.com/ajax.php', 
  {Action:"post",Name:"lulu"}, 
  function(data,textStatus){ 
    //data可以是xmlDoc,jsonObj,html,text,等等. 
    //this;//这个Ajax请求的选项配置信息,请参考jQuery.get()说到的this 
    alert(data.result); 
  }, 
  "json"//这里设置了请求的返回格式为"json" 
);

如果你设置了请求的格式为"json",此时你没有设置Response回来的ContentType 为:Response.ContentType = "application/json"; 那么你将无法捕捉到返回的数据。

注意,上面的示例中 alert(data.result); 由于设置了Accept报头为"json",这里返回的data就是一个对象,因此不需要用eval()来转换为对象。

以上所述就是本文的全部内容了,希望大家能够喜欢。

【相关教程推荐】

1. JavaScript视频教程
2. JavaScript在线手册
3. bootstrap教程

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

实现方法:1、用“$("img").delay(毫秒数).fadeOut()”语句,delay()设置延迟秒数;2、用“setTimeout(function(){ $("img").hide(); },毫秒值);”语句,通过定时器来延迟。

jquery怎么修改min-height样式jquery怎么修改min-height样式Apr 20, 2022 pm 12:19 PM

修改方法:1、用css()设置新样式,语法“$(元素).css("min-height","新值")”;2、用attr(),通过设置style属性来添加新样式,语法“$(元素).attr("style","min-height:新值")”。

axios与jquery的区别是什么axios与jquery的区别是什么Apr 20, 2022 pm 06:18 PM

区别:1、axios是一个异步请求框架,用于封装底层的XMLHttpRequest,而jquery是一个JavaScript库,只是顺便封装了dom操作;2、axios是基于承诺对象的,可以用承诺对象中的方法,而jquery不基于承诺对象。

jquery怎么在body中增加元素jquery怎么在body中增加元素Apr 22, 2022 am 11:13 AM

增加元素的方法:1、用append(),语法“$("body").append(新元素)”,可向body内部的末尾处增加元素;2、用prepend(),语法“$("body").prepend(新元素)”,可向body内部的开始处增加元素。

jquery中apply()方法怎么用jquery中apply()方法怎么用Apr 24, 2022 pm 05:35 PM

在jquery中,apply()方法用于改变this指向,使用另一个对象替换当前对象,是应用某一对象的一个方法,语法为“apply(thisobj,[argarray])”;参数argarray表示的是以数组的形式进行传递。

jquery怎么删除div内所有子元素jquery怎么删除div内所有子元素Apr 21, 2022 pm 07:08 PM

删除方法:1、用empty(),语法“$("div").empty();”,可删除所有子节点和内容;2、用children()和remove(),语法“$("div").children().remove();”,只删除子元素,不删除内容。

jquery on()有几个参数jquery on()有几个参数Apr 21, 2022 am 11:29 AM

on()方法有4个参数:1、第一个参数不可省略,规定要从被选元素添加的一个或多个事件或命名空间;2、第二个参数可省略,规定元素的事件处理程序;3、第三个参数可省略,规定传递到函数的额外数据;4、第四个参数可省略,规定当事件发生时运行的函数。

jquery怎么去掉只读属性jquery怎么去掉只读属性Apr 20, 2022 pm 07:55 PM

去掉方法:1、用“$(selector).removeAttr("readonly")”语句删除readonly属性;2、用“$(selector).attr("readonly",false)”将readonly属性的值设置为false。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、