Отключенные поля формы не отправляют данные


есть ли способ (с флагом атрибута или что-то в этом роде) включить поля формы, которые отключены для отправки данных?

или, если это невозможно, есть ли способ заблокировать поля от редактирования с помощью css или любого другого атрибута, кроме отключенного, не скрывая их?

мой частный случай на данный момент является идентификатором для набора данных, который должен быть показан в виде (uneditable) - если нет лучшего решения, я думаю, что буду использовать скрытое поле в дополнение к отключен один, чтобы удерживать фактическое значение с отключенным, показывая его.

5 120

5 ответов:

проверка атрибута readonlyhttp://www.w3schools.com/tags/att_input_readonly.asp

С ЭЛЕМЕНТАМИ Disabled атрибут не представлены или вы можете сказать, что их значения не опубликованы.

т. е.

<input type="textbox" name="Percentage" value="100" disabled="disabled" /> 

к вашему сведению,

  1. отключенные элементы управления не получают фокус.
  2. отключенные элементы управления пропускаются в навигации по вкладкам.
  3. отключенные элементы управления не могут быть успешно размещены.

можно использовать readonly атрибут в вашем случае, сделав это, вы сможете опубликовать свое поле данные.

т. е.

<input type="textbox" name="Percentage" value="100" readonly="readonly" />

к вашему сведению,

  1. элементы только для чтения получают фокус, но не могут быть изменены пользователем.
  2. элементы только для чтения включены в навигацию по вкладкам.
  3. элементы только для чтения успешно размещены.

Примечание: READONLY не работает на флажках и выберите теги

Ref from

как уже было сказано: READONLY не работает <input type='checkbox'> и <select>...</select>.

если у вас Form с отключенными флажками / выбирает и нужно их представить, вы можете использовать jQuery:

$('form').submit(function(e) {
    $(':disabled').each(function(e) {
        $(this).removeAttr('disabled');
    })
});

этот код удаляет disabled атрибут из всех элементов на submit.

используйте указатель CSS-events: none на полях, которые вы хотите "отключить" (возможно, вместе с серым фоном), что позволяет выполнять действие POST, например:

<input type="text" class="disable">

.disable{
pointer-events:none;
background:grey;
}

Ref:https://developer.mozilla.org/en-US/docs/Web/CSS/pointer-events

мы также можем использовать только для чтения только с нижеприведенными атрибутами -

readonly onclick= ' return false;'

Это потому, что если мы будем использовать только для чтения, то переключатели будут редактироваться. Чтобы избежать этой ситуации, мы можем использовать только чтение с вышеуказанной комбинацией. Это ограничит редактирование, и значения элемента также будут передаваться во время отправки формы.