2012-01-19 5 views
111

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

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

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

+3

Возможная дубликат [форма Disabled входов не появляются в запросе] (http://stackoverflow.com/questions/73 57256/disabled-form-entries-do-not-seem-in-the-request) –

ответ

175

Извлекает атрибут только для чтения http://www.w3schools.com/tags/att_input_readonly.asp

+1

Великий - Должен был пропустить этот при просмотре атрибутов ... отлично работает, спасибо :) – bardiir

+1

Dead link? Существует также [более подробный ответ здесь] (http://stackoverflow.com/a/7357314/2930477). – misterManSam

+5

Проблема заключается в том, что атрибут ready-only не доступен только для чтения в элементе select form. Я все еще могу выбрать другой вариант из раскрывающегося списка только для чтения, поэтому победил его цель. – Donato

45

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

т.е.

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

FYI,

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

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

т.е.

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

FYI,

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

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

Ref from

8

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

Если у вас есть Form с ограниченными возможностями Флажки/выбирает и нужно, чтобы они были представлены, вы можете использовать JQuery:

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

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

-1

, если вы хотите, чтобы отключить поле или хотите отправить значение, вы можете попробовать это

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

Используйте CSS указатель события: ни на полях, вы не хотите, чтобы «отключить» (возможно, вместе с неактивен фоном), которая позволяет действие POST, как:

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

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

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

Смежные вопросы