[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/ja/docs/Web/API/HTMLDialogElement [Back]  [Original]

HTMLDialogElement - Web API | MDN

MDN Web Docs

View in English Always switch to English

HTMLDialogElement

Baseline *

20223

*

HTMLDialogElement <dialog> HTMLElement

EventTarget Node Element HTMLElement HTMLDialogElement

HTMLElement

HTMLDialogElement.closedBy

<dialog> closedby

HTMLDialogElement.open

open

HTMLDialogElement.returnValue

HTMLElement

HTMLDialogElement.close()

returnValue

HTMLDialogElement.requestClose()

returnValue

HTMLDialogElement.show()

HTMLDialogElement.showModal()

inert

HTMLElement

addEventListener() on

cancel

HTMLDialogElement.requestClose()

close

HTMLDialogElement.close() method="dialog"

HTMLDialogElement.showModal() (<dialog>)

HTMLDialogElement.close()

cancel close beforetoggle toggle

HTML

html
<!--  -->
<dialog id="favDialog">
  <form method="dialog">
    <p>
      <label for="favAnimal">:</label>
      <select id="favAnimal" name="favAnimal">
        <option></option>
        <option></option>
        <option></option>
        <option></option>
      </select>
    </p>
    <div>
      <button id="cancel" type="reset"></button>
      <button id="submit" type="submit"></button>
    </div>
  </form>
</dialog>

<div>
  <button id="updateDetails"></button>
</div>

JavaScript

<button> <dialog> <select> HTMLDialogElement.showModal()

js
const updateButton = document.getElementById("updateDetails");
const confirmButton = document.getElementById("submit");
const cancelButton = document.getElementById("cancel");
const dialog = document.getElementById("favDialog");
const selectElement = document.getElementById("favAnimal");

// 
updateButton.addEventListener("click", () => {
  dialog.showModal();
});

click HTMLDialogElement.close() (HTMLDialogElement.returnValue) null

js
// 
confirmButton.addEventListener("click", () => {
  if (selectElement.value) {
    // dialog.returnValue 
    dialog.close(selectElement.value);
  }
});

// 
cancelButton.addEventListener("click", () => {
  dialog.close(); // dialog.returnValue  null 
});

close() close null

js
dialog.addEventListener("close", (event) => {
  log(`close_event: (dialog.returnValue: "${dialog.returnValue}")`);
});
cancel

cancel Esc HTMLDialogElement.requestClose() HTMLDialogElement.returnValue ""

js
dialog.addEventListener("cancel", (event) => {
  log(`cancel_event: (dialog.returnValue: "${dialog.returnValue}")`);
  dialog.returnValue = ""; // 
});
toggle

toggleHTMLElement close

: toggle beforetoggle /HTMLDialogElement.open

js
dialog.addEventListener("toggle", (event) => {
  log(`toggle_event: Dialog ${event.newState}`);
});
beforetoggle

beforetoggleHTMLElement

js
dialog.addEventListener("beforetoggle", (event) => {
  log(
    `beforetoggle event: oldState: ${event.oldState}, newState: ${event.newState}`,
  );

  // event.preventDefault() 
  /*
    if (shouldCancel()) {
        event.preventDefault();
    }
  */
});

close

HTML
# htmldialogelement
HTML
# event-beforetoggle
HTML
# event-toggle

api.HTMLDialogElement

api.HTMLElement.beforetoggle_event.dialog_elements

api.HTMLElement.toggle_event.dialog_elements


Web Proxy Viewer  |  New URL  |  Original Page