Атрибут target тега <form> — де показати відповідь


Атрибут target визначає де відобразити відповідь, отриману після відправки форми.

Після того, як обробник форми отримує дані, він повертає результат у вигляді HTML-документа. Ви можете визначити вікно, в яке буде завантажено повернуту веб-сторінку. Для цього використовується атрибут target, в якості його значення вказується ім'я вікна(сторінки) або фрейму.

автор: с3с

Загальний опис

автор: NagarD

Порада

Фрейми і framesets не підтримуються в HTML5, тому значення _parent, _top і framename тепер в основному використовується з iframe.

автор: с3с
Нотатка

Якщо target не встановлено, то значення за замовчуванням буде _self.

автор: с3с

Синтаксис

<form target="_blank|_self|_parent|_top|framename">


...


</form>

Атрибут target може отримувати 5 значень:

_blank

Завантажує сторінку в нове вікно браузера.

автор: с3с

_self

Завантажує сторінку в поточне вікно.

автор: с3с

_parent

Завантажує сторінку в батьківський фрейм, якщо фрейма немає, то це значення працює як _self.

автор: с3с

_top

Скасовує всі фрейми і завантажує сторінку в повному вікні браузера, якщо фреймів немає, то це значення працює як _self.

автор: с3с

framename

Іʼмя фрейма в який завантажити результат.

автор: с3с

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
1 1 3 15 12 ≤11
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
4.4 18 4 2

Приклади

+ запропонувати свій приклад у пісочниці

Найпростіший приклад використання HTML атрибута target теґа <form>;

<p>Приклад форми для входу з використанням атрибуту 'target'</p>
<hr>
<form target="_blank">
  <label>Ім'я:</label><br>
  <input type="text" name="login"><br>
  
  <label>Email:</label><br>
  <input type="email" name=""><br>
  
  <label>Ваш сайт:</label><br>
  <input type="url"><br>
  
  <label>Ваше повідомлення:</label><br>
  <textarea></textarea>
  <br>
  
  <input type="submit" value="Увійти" >
</form>
автор: с3с

Дві форми з однаковим target="out" і дві рамки: у першої є name="out", у другої лише id="out". Вердикт під кожною рамкою малюють правила з :has() — вони дивляться на саму розмітку, а не на підпис, набраний руками. Форми в пісочниці не надсилаються, тож ідеться про будову.

HTML

<div class="case">
    <p class="lbl">Правильно: у рамки є name</p>
    <iframe name="out" title="ціль форми"
        srcdoc="<p style='font:14px system-ui;color:#3a9a4f;margin:6px'>сюди прийде відповідь обробника</p>"></iframe>
    <form action="/poshuk" target="out">
        <input name="q" value="запит" size="12">
        <button type="submit">Надіслати в рамку</button>
        <button type="submit" formtarget="_blank">…а цю — у нову вкладку</button>
    </form>
</div>

<div class="case">
    <p class="lbl">Типова помилка: у рамки лише id</p>
    <iframe id="out" title="не ціль"
        srcdoc="<p style='font:14px system-ui;color:#c0392b;margin:6px'>сюди не прийде нічого</p>"></iframe>
    <form action="/poshuk" target="out">
        <input name="q" value="запит" size="12">
        <button type="submit">Відкриється в НОВОМУ вікні</button>
    </form>
</div>

CSS

.case {
    max-width: 520px;
    margin-bottom: 22px;
    padding: 10px 12px;
    border: 1px solid #b9c6d8;
    background: #f6f9ff;
}

.lbl {
    margin: 0 0 8px;
    font-weight: 600;
}

iframe {
    display: block;
    width: 100%;
    height: 54px;
    border: 2px solid #b9c6d8;
    background: #fff;
}

form {
    margin-top: 10px;
}

input,
button {
    font: inherit;
    padding: 4px 8px;
}

.case:has(iframe[name])::after {
    content: "ім'я знайдено — відповідь піде в цю рамку";
    display: block;
    margin-top: 8px;
    color: #3a9a4f;
    font-weight: 600;
}

.case:not(:has(iframe[name]))::after {
    content: "імені немає — переглядач відкриє нове вікно з іменем out";
    display: block;
    margin-top: 8px;
    color: #d64545;
    font-weight: 600;
}

.case:has(button[formtarget]) form::after {
    content: "у другої кнопки свій formtarget — він переважить target форми";
    display: block;
    margin-top: 6px;
    color: #1b4f9c;
    font-size: .9em;
}
автор: NagarD

Різниця між HTML 4.01 та HTML5


Цей атрибут підтримується в HTML5. Атрибут target був застарілим в HTML 4.01.

Різниця між XHTML та HTML


Атрибут target не рекомендований до використання в XHTML 1.1.


Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле веде сходинками (розділ → тип → сторінка), а хибний ключ підкреслить хвилею.
[[!sandbox/S0oh1hBm]] Живий приклад окремим рядком — саме вікно результату. Той самий ключ зі знаком !: наберіть [[! і дійдіть сходинками до потрібної сторінки, список покаже її приклади.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Правка
Зворотний зв'язок
Вхід