«Защитить» значение текстового поля от ввода (HTML-форма) - PullRequest
5 голосов
/ 17 ноября 2010

Мне было интересно, можно ли присвоить значение текстовому полю HTML и защитить его.

Я имею в виду то, чтобы сделать его содержимое неизменным, чтобы при отправке формы он был уверен«именно это значение было представлено.

Кстати, я понимаю, что проще было бы не« прослушивать »этот вход и просто назначить его, но это пригодилось бы, чтобы иметь возможность делать то, что заявленовыше.

Я надеюсь, что вопрос достаточно ясен, пожалуйста, попросите любые необходимые разъяснения.

Заранее спасибо!

РЕДАКТИРОВАТЬ: Я определенно не был достаточно ясен, но я пыталсячтобы выразить, что я должен держать значение после отправки (не модифицируется на стороне клиента)

Ответы [ 5 ]

7 голосов
/ 18 ноября 2010

Нет, это не так.Никогда не следует доверять пользовательскому вводу, который включает отправку форм.

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

Однако его все равно можно изменить с помощью Firebug, DOM Inspector и т. Д. Или,они могут просто отправить HTTP-запрос без использования браузера вообще.

Я бы рекомендовал вместо этого сохранять значение в сеансе.

4 голосов
/ 17 ноября 2010

Установить свойство readonly элемента ввода:

<input type="text" readonly="readonly" />

Это предотвратит любые изменения (кроме случаев, когда пользователь редактирует с помощью DOM Inspector). Всегда проверяйте ввод на сервере. Если вы не хотите вносить какие-либо изменения, не позволяйте пользователю редактировать их.

http://www.w3schools.com/tags/att_input_readonly.asp

3 голосов
/ 18 ноября 2010

<input type="text" readonly="readonly"/>.Но: Никогда не проверяйте и проверяйте данные на стороне сервера. Очень просто запросить GET / POST с неверными данными.

3 голосов
/ 17 ноября 2010

Просто сделай это

<input type="text" value="VALUE" readonly />

Тогда это будет только для чтения:)

2 голосов
/ 17 ноября 2010

Входные данные формы имеют атрибуты «отключен» и «только для чтения», которые можно установить, чтобы сделать их недоступными для редактирования.

http://htmlhelp.com/reference/html40/forms/input.html

Хотя вы никогда не можете быть на 100% уверены в том, что отправляется со стороны клиента. Весь DOM доступен для редактирования клиентом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...