| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/ja/docs/Web/API/XMLHttpRequest_API/Using_FormData_Objects | [Back] [Original] |
Get to know MDN better
FormData XMLHttpRequest API multipart/form-data submit()
FormData FormData append()
const send = document.querySelector("#send");
send.addEventListener("click", async () => {
const formData = new FormData();
formData.append("username", "Groucho");
formData.append("accountNum", 123456);
// file <input>
const avatar = document.querySelector("#avatar");
formData.append("avatar", avatar.files[0]);
// JavaScript
const content = '<q id="a"><span id="b">hey!</span></q>';
const blob = new Blob([content], { type: "text/xml" });
formData.append("webmasterFile", blob);
const response = await fetch("http://example.org/post", {
method: "POST",
body: formData,
});
console.log(await response.json());
});
:
"avatar" "webmasterFile" "accountNum" FormData.append() Blob File Blob File
"username", "accountNum", "avatar",
"webmasterFile" FormData fetch() "webmasterFile" Blob Blob Blob JavaScript File Blob Blob Blob Blob()
FormData <form> FormData FormData form
:
FormData name
const formData = new FormData(someFormElement);
:
const send = document.querySelector("#send");
send.addEventListener("click", async () => {
// <form>
const userInfo = document.querySelector("#user-info");
const formData = new FormData(userInfo);
const response = await fetch("http://example.org/post", {
method: "POST",
body: formData,
});
console.log(await response.json());
});
FormData
const send = document.querySelector("#send");
send.addEventListener("click", async () => {
const userInfo = document.querySelector("#user-info");
const formData = new FormData(userInfo);
formData.append("serialnumber", 12345);
const response = await fetch("http://example.org/post", {
method: "POST",
body: formData,
});
console.log(await response.json());
});
FormData type "file" <input> <form>
<form enctype="multipart/form-data" method="post" name="fileinfo" id="fileinfo">
<p>
<label
>Your email address:
<input
type="email"
autocomplete="on"
name="userid"
placeholder="email"
required
size="32"
maxlength="64" />
</label>
</p>
<p>
<label
>Custom file label:
<input type="text" name="file-label" size="12" maxlength="32" />
</label>
</p>
<p>
<label
>File to stash:
<input type="file" name="file" required />
</label>
</p>
<p>
<input type="submit" value="Stash the file!" />
</p>
</form>
const form = document.querySelector("#fileinfo");
form.addEventListener("submit", async (event) => {
const formData = new FormData(form);
formData.append("CustomField", "This is some extra data");
const response = await fetch("stash.php", {
method: "POST",
body: formData,
});
event.preventDefault();
});
:
FormData XMLHttpRequest API multipart/form-data Content-Type POST Blob Content-Type Content-Type
data.append("myfile", myBlob, "filename.txt");
append() 3 Content-Disposition "blob"
FormData formdata HTMLFormElement FormData()
FormData formdata
JavaScript
const formElem = document.querySelector("form");
submit preventDefault FormData formdata
formElem.addEventListener("submit", (e) => {
//
e.preventDefault();
// FormData formdata
new FormData(formElem);
});
formdata FormData FormDataEvent.formData XMLHttpRequest
formElem.addEventListener("formdata", (e) => {
console.log("formdata fired");
//
const data = e.formData;
for (const value of data.values()) {
console.log(value);
}
// fetch()
fetch("/formHandler", {
method: "POST",
body: data,
});
});
FormData
| Web Proxy Viewer | New URL | Original Page |