Це те, що я знайшов Firebug у Firefox.
Чи те саме в інших браузерах?
Якщо так, то в чому причина цього?
Це те, що я знайшов Firebug у Firefox.
Чи те саме в інших браузерах?
Якщо так, то в чому причина цього?
Відповіді:
Так, усі браузери не повинні надсилати відключені введення, оскільки вони доступні лише для читання.
Більше інформації (розділ 17.12.1)
Визначення атрибутів
disabled [CI] Якщо встановлено для керування формою, цей булевий атрибут вимикає керування для введення користувачем. Якщо встановлено, атрибут відключений має такий елемент на елемент:
- Інвалідні елементи керування не отримують фокус.
- У вікні навігації з вкладками пропускаються елементи інвалідів.
- Управління з обмеженими можливостями не може бути успішним.
Наступні елементи підтримують відключений атрибут: BUTTON, INPUT, OPTGROUP, OPTION, SELECT та TEXTAREA.
Цей атрибут успадковується, але локальні декларації переважають спадкове значення.
Спосіб відображення відключених елементів залежить від агента користувача. Наприклад, деякі користувацькі агенти "сіріють" відключені елементи меню, мітки кнопок тощо.
У цьому прикладі елемент INPUT відключений. Таким чином, він не може отримати введення користувача, а також його значення не буде подано у формі.
<INPUT disabled name="fred" value="stone">
Примітка. Єдиний спосіб динамічно змінити значення відключеного атрибута - через скрипт.
<input type="hidden">
елемент з тим самим назвою / значенням, що і вимкнено вхід.
disabled
дані не подаватимуть дані.
Використовуйте readonly
атрибут:
<input type="text" readonly />
readonly
працює, просто переконайтеся, що ви передали "ім'я" attr на вхід.
Ви можете використовувати три речі, щоб імітувати інвалідів:
HTML: readonly
атрибут (щоб значення, подане у вводі, можна було використовувати при поданні форми. Також користувач не може змінити вхідне значення)
CSS: 'pointer-events':'none'
(блокування користувача від натискання на вхід)
HTML: tabindex="-1"
(блокування користувача для переходу до вводу з клавіатури)
Вони не надходять, тому що це написано у специфікації W3C .
17.13.2 Успішне управління
Успішний контроль є "дійсним" для подання. [сніп]
- Контроль, який вимкнено, не може бути успішним.
Іншими словами, специфікація говорить про те, що елементи, які вимкнено, вважаються недійсними і не повинні подаватися.
Disabled
елементи керування не можуть бути успішними, і успішний контроль є "дійсним" для подання. Це причина, через яку відключені елементи керування не надсилають форму.
Є два атрибути, а саме - readonly
і disabled
, які можуть робити вхід лише для читання. Але між ними є крихітна різниця.
<input type="text" readonly />
<input type="text" disabled />
readonly
Атрибут робить ваш введення тексту відключений, і користувачі не можуть змінити його більше.disabled
Атрибут не тільки зробить ваш текст введення тексту вимкненим (незмінним), але і не може бути надісланий .jQuery підхід (1):
$("#inputID").prop("readonly", true);
$("#inputID").prop("disabled", true);
jQuery підхід (2):
$("#inputID").attr("readonly","readonly");
$("#inputID").attr("disabled", "disabled");
Підхід JavaScript:
document.getElementById("inputID").readOnly = true;
document.getElementById("inputID").disabled = true;
PS disabled
і readonly
є стандартними атрибутами html. prop
представлений с jQuery 1.6
.
Вибір елементів керування все ще можна натискати навіть у режимі "лише читання"
якщо ви все ще хочете відключити елемент керування, але ви хочете, щоб його значення було розміщено. Ви можете розглянути можливість створення прихованого поля. з тим же значенням, що і ваш контроль.
потім створіть jquery при зміні вибору
$('#your_select_id').change(function () {
$('#your_hidden_selectid').val($('#your_select_id').val());
});