Значение текстового поля остается, даже если я обновлю? - PullRequest
0 голосов
/ 19 января 2010

У меня есть следующий html:

<input type="text" id="searchbox" name="q" value="Search Pictures..." onclick=" if(this.value=='Search Pictures...'){this.value='';}" />

Это работает, когда я открываю страницу в первый раз, но когда я что-то печатаю и ищу, я возвращаюсь на страницу или обновляю, янайти последнее ключевое слово по-прежнему «липким» вместо «Поиск картинок ...»

Любой доступный тег, чтобы избежать этой проблемы?

Спасибо

Ответы [ 4 ]

1 голос
/ 19 января 2010

Кстати ... не пиши:

this.value === 'blah blah, copy of text from value attribute'

Просто используйте свойство defaultValue:

this.value == this.defaultValue

Это намного проще и чище.

1 голос
/ 19 января 2010

Если вы установили значение для тега «Поиск изображений ...», как и раньше, то всякий раз, когда страница загружается без какого-либо предварительного сохранения более нового значения, вы получите «Поиск изображений ...» в качестве значения.

Для сохранения входных данных у вас есть несколько доступных способов в зависимости от среды, в которой вы разрабатываете.

0 голосов
/ 19 января 2010

HTTP не имеет состояния и не сохраняет значения формы между запросами.

Каждый раз, когда вы загружаете страницу, 'жестко запрограммированное' ЗНАЧЕНИЕ 'Поиск картинок ...' заменяет что-либо в элементе ввода из предыдущего запроса. Вам необходимо сохранить значение, извлекая опубликованное значение из коллекции форм и записывая его обратно. Как это сделать, зависит от платформы, на которой вы работаете - возможно, вы используете какую-то серверную среду или язык (например, PHP). или ASP.NET)?

0 голосов
/ 19 января 2010

Полагаю, это на firefox.

Вы можете добавить атрибут autocomplete = "off"

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