Как запретить поиск при пустом поле запроаса?

AT
На сайте с 18.10.2009
Offline
79
1379

Добрый день. На моем сайте можно нажать кнопку поиска при пустом поле поиска. При этом попадаешь на страницу.

"Результаты поиска по запросу: Введите ваш запрос

По вашем запросу ничего не найдено"

Как сделать так, чтобы поиск был невозможен, если что-то в поле поиска не написал? Заковырка, как я понимаю в том, что по-умолчанию в поле поиска стоит дежурная фраза "введите ваш запрос". Ее я бы не хотел убирать.

<form class="search-box" action="<?php bloginfo('home'); ?>/" method="get">

<input type="text" value="Введите ваш запрос" class="search-txt" name="s"
onblur="if(this.value=='') this.value='Введите ваш запрос';" onfocus="if(this.value=='Введите ваш запрос') this.value='';" />
<input type="submit" value="" class="search-bt" />
</form>
C
На сайте с 04.02.2005
Offline
291
#1

обработчик onsubmit

И проверять на введенный запрос.

S
На сайте с 18.04.2008
Offline
125
#2

Простейший код на Javascript



<form class="search-box" action="<?php bloginfo('home'); ?>/" method="get" onsubmit="openery();return false;">
<input type="text" value="Введите ваш запрос" class="search-txt" name="s"
onblur="if(this.value=='') this.value='Введите ваш запрос';" onfocus="if(this.value=='Введите ваш запрос') this.value='';" />
<input type="submit" value="" class="search-bt" />
</form>


<script type="text/javascript">
function openery(){
if (document.forms[0].s.value.length < 3) {
alert('СЛИШКОМ КОРОТКИЙ запрос (мин. 3 символов)\n');
return false
}
}
</script>
богоносец
На сайте с 30.01.2007
Offline
775
#3

http://htmlbook.ru/html5/forms

<form class="search-box" action="<?php bloginfo('home'); ?>/" method="get"> 
<input type="text" class="search-txt" name="s" placeholder="ваш запрос" required="required"/>
<input type="submit" value="найти" class="search-bt" />
</form>
AT
На сайте с 18.10.2009
Offline
79
#4

softter, я попробовал так - поиск перестал работать. При клике "найти" ничего не происходит.

богоносец, работает, но как убрать красную рамку, которая появляется при неправильном запросе и потом не исчезает до обновления страницы? Пробовал прописывать в style.css вплоть до такого:

input[type="text"] {  border: none; /* Убираем рамку */
outline: none; /* Убираем свечение в Chrome и Safari */
-webkit-appearance: none; /* Убираем рамку в Chrome и Safari */}

input[type="submit"] {
border: none; /* Убираем рамку */
outline: none; /* Убираем свечение в Chrome и Safari */
-webkit-appearance: none; /* Убираем рамку в Chrome и Safari */
}

А также прямо в форме поиска style border none;. Не помогает.

Помогите разобраться.

богоносец
На сайте с 30.01.2007
Offline
775
#5

Всех новых глюков всех браузеров не вылечите.

siv1987
На сайте с 02.04.2009
Offline
427
#6

Псевдокласс :valid и :invalid

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий