---
title: XMLHttpRequest.upload
slug: Web/API/XMLHttpRequest/upload
tags:
  - AJAX
  - API
  - Monitoring XMLHttpRequest
  - Property
  - Read-only
  - Reference
  - Sending Files
  - Uploading
  - XHR
  - XHR Uploads
  - XMLHttpRequest
  - XMLHttpRequest Uploads
  - XMLHttpRequestUpload
  - upload
  - アップロード
  - ファイル送信
translation_of: Web/API/XMLHttpRequest/upload
---
<div>{{APIRef('XMLHttpRequest')}}</div>

<p><span class="seoSummary">{{domxref("XMLHttpRequest")}} の <code>upload</code> プロパティは、アップロードの進捗を監視することができる {{domxref("XMLHttpRequestUpload")}} オブジェクトを返します。</span>これは不透過なオブジェクトですが、 {{domxref("XMLHttpRequestEventTarget")}} でもあるため、進捗を追跡するために添付することができます。</p>

<p>以下のイベントは upload オブジェクトを起動してアップロードを監視する目に使用することができます。</p>

<table class="standard-table">
 <tbody>
  <tr>
   <td class="header">イベント</td>
   <td class="header">イベントリスナー</td>
   <td class="header">解説</td>
  </tr>
  <tr>
   <td>{{event("loadstart")}}</td>
   <td>{{domxref("XMLHttpRequest.onloadstart", "onloadstart")}}</td>
   <td>アップロードが始まった。</td>
  </tr>
  <tr>
   <td>{{event("progress")}}</td>
   <td>{{domxref("XMLHttpRequest.onprogress", "onprogress")}}</td>
   <td>進捗の量を示すために定期的に発生する。</td>
  </tr>
  <tr>
   <td>{{event("abort")}}</td>
   <td>{{domxref("XMLHttpRequest.onabort", "onabort")}}</td>
   <td>アップロード操作が中断された。</td>
  </tr>
  <tr>
   <td>{{event("error")}}</td>
   <td>{{domxref("XMLHttpRequest.onerror", "onerror")}}</td>
   <td>アップロードがエラーのために失敗した。</td>
  </tr>
  <tr>
   <td>{{event("load")}}</td>
   <td>{{domxref("XMLHttpRequest.onload", "onload")}}</td>
   <td>アップロードが完全に成功した。</td>
  </tr>
  <tr>
   <td>{{event("timeout")}}</td>
   <td>{{domxref("XMLHttpRequest.ontimeout", "ontimeout")}}</td>
   <td>返事が {{domxref("XMLHttpRequest.timeout")}} で指定された時間間隔内に届かなかったため、アップロードがタイムアウトされた。</td>
  </tr>
  <tr>
   <td>{{event("loadend")}}</td>
   <td>{{domxref("XMLHttpRequest.onloadend", "onloadend")}}</td>
   <td>アップロードが終了した。このイベントでは成功か失敗かを区別することはできず、結果にかかわらずアップロードが終了したときに送信されます。このイベントの前に、 <code>load</code>, <code>error</code>, <code>abort</code>, <code>timeout</code> のうちの1つがアップロードが終了した理由を示すために配信されます。</td>
  </tr>
 </tbody>
</table>

<h2 id="Specifications" name="Specifications">仕様書</h2>

<table class="standard-table">
 <thead>
  <tr>
   <th scope="col">仕様書</th>
   <th scope="col">状態</th>
   <th scope="col">備考</th>
  </tr>
 </thead>
 <tbody>
  <tr>
   <td>{{SpecName('XMLHttpRequest', '#the-upload-attribute')}}</td>
   <td>{{Spec2('XMLHttpRequest')}}</td>
   <td>WHATWG living standard</td>
  </tr>
 </tbody>
</table>

<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの互換性</h2>

<p>{{Compat("api.XMLHttpRequest.upload")}}</p>

<h2 id="See_also" name="See_also">関連情報</h2>

<ul>
 <li><a href="/ja/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest">XMLHttpRequest の使用</a></li>
 <li><a href="/ja/docs/Web/API/File_Handle_API">FileHandle API</a></li>
 <li><a href="/ja/docs/Web/API/File_and_Directory_Entries_API">File and Directory Entries API</a></li>
</ul>