クラス 説明
Ajax.Request Ajaxリクエスト
Ajax.Response Ajaxリクエストのレスポンス
Ajax.Updater Ajaxリクエストを行い、そのレスポンスで指定要素を書き換える


new Ajax.Request( url [ , options ] )
Prototype API documentation | Ajax.Request



var params = { a: 100, b: 'foo' };

new Ajax.Request( 'index.php',
        method: 'get',
        parameters: params,
        onSuccess: function( response )
            alert( response );
    } );


プロパティ 説明 既定値
asynchronous Boolean Determines whether XMLHttpRequest is used asynchronously or not. Synchronous usage is strongly discouraged - it halts all script execution for the duration of the request and blocks the browser UI. true
contentType String The Content-type header for your request. Change this header if you want to send data in another format (like XML). application/x-www-form-urlencoded
encoding String The encoding for the contents of your request. It is best left as-is, but should weird encoding issues arise, you may have to tweak this. UTF-8
method String The HTTP method to use for the request. The other common possibility is get. Abiding by Rails conventions, Prototype also reacts to other HTTP verbs (such as put and delete) by submitting via post and adding a extra _method parameter with the originally-requested method. post
parameters String

リクエストのパラメータ。GETメソッドではURLに、他のメソッドではリクエスト ボディにエンコードされる。


  • 文字列 … a=100&b=foo
  • Hash … $H( { a: 100, b: 'foo' } )
  • オブジェクト … { a: 100, b: 'foo' }
postBody String POSTメソッドのリクエスト ボディの内容。これを指定しない場合は、parametersプロパティが代わりに使用される。  
requestHeaders Object A set of key-value pairs, with properties representing header names.  
evalJS Boolean | String Automatically evals the content of Ajax.Response#responseText and populates Ajax.Response#responseJSON with it if the Content-type returned by the server is set to application/json. If the request doesn't obey same-origin policy, the content is sanitized before evaluation. If you need to force evalutation, pass 'force'. To prevent it altogether, pass false. true
sanitizeJSON Boolean Sanitizes the contents of Ajax.Response#responseText before evaluating it. false for same-origin requests, true otherwise
メソッド 説明
onCreate Triggered when the Ajax.Request object is initialized. This is after the parameters and the URL have been processed, but before opening the connection via the XHR (XMLHttpRequest) object.
onUninitialized※1 Invoked just after the XHR object is created.
onLoading※1 Triggered when the underlying XHR object is being setup, and its connection opened.
onLoaded※1 Triggered once the underlying XHR object is setup, the connection is open, and it is ready to send its actual request.
onInteractive※1 Triggered whenever the requester receives a part of the response (but not the final part), should it be sent in several packets.
onSuccess リクエストが完了し、そのステータスコードが未定義、200番台または304のときに呼び出される。ただしそのステータスコードがonXYZメソッドで定義されているときには、このメソッドは呼び出されない。


onFailure リクエストが完了し、そのステータスコードが定義されているが200番台以外のときに呼び出される。ただしそのステータスコードがonXYZメソッドで定義されているときには、このメソッドは呼び出されない。



Invoked just after the response is complete if the status code is the exact code used in the callback name. Prevents execution of onSuccess and onFailure. Happens before onComplete.

(with XYZ representing any HTTP status code)

onException Triggered whenever an XHR error arises. Has a custom signature: the first argument is the requester (i.e. an Ajax.Request instance), and the second is the exception object.
onComplete すべてのコールバックの最後に呼ばれる。リクエストの間に何が起ころうとも、必ず呼ばれることが保証されている。
※1 これらのメソッドが呼び出される保証はありません。
onUninitialized Uninitialized (0) ※1
onLoading Open (1)
onLoaded Sent (2)
onInteractive Receiving (3)
onComplete Loaded (4)
※1 かっこ内の数値はreadyStateプロパティの値


分類 プロパティ 説明
  readyState リクエストの状態を表す数値
  • 0 : Uninitialized
  • 1 : Loading
  • 2 : Loaded
  • 3 : Interactive
  • 4 : Complete
リクエスト request リクエストに使用した Ajax.RequestまたはAjax.Updaterオブジェクト
レスポンス responseJSON レスポンスのJSONボディ
responseText レスポンスのテキスト ボディ
responseXML レスポンスのXMLボディ
ステータス status HTTPステータス コード
statusText HTTPステータス テキスト
  transport XmlHttpRequestオブジェクト
分類 メソッド 説明
Header getHeader  
ResponseHeader getResponseHeader