Удаление параметров "x" и "y" у кнопки image
Те, кто использовал кнопку type="image" и метод GET, обратили внимание, что в адресной строке появляются дополнительные параметры "x" и "y", которые содержат координаты нажатия курсора мыши. Многим они не нравятся, и в этой статье я разберу несколько способов, как от них избавиться.
Пусть у нас будет следующий HTML-код:
<form name="search" action="search.php" method="get">
<div>
Поиск: <input type="text" name="query" />
<br />
<input type="image" src="images/button.png" alt="" />
</div>
</form>
Самый первый способ избавиться от лишних параметров у кнопки image - это сделать редирект в отдельном файле. Для этого ставим в action, например, request.php, а уже в нём пишем следующий код:
<?php
header("Location: search.php?query=".$_REQUEST["query"]);
exit;
?>
Второй способ - это воспользоваться JavaScript. Для этого в тег form надо добавить атрибут onsubmit="return formSubmit(this)". Дальше в JavaScript надо создать вот такую функцию:
function formSubmit(form) {
document.location = "search.php?query=" + form.query.value; // Делаем редирект
return false; // Убираем стандартную отправку формы
}
И, наконец, третий вариант, который я сам в последнее время использую и который рекомендую использовать Вам - это использовать type="submit" и задавать внешний вид кнопки через CSS. Например, это можно сделать так:
input[type="submit"] {
background: url("images/button.png") no-repeat;
border: none;
cursor: pointer;
height: 40px;
width: 250px;
}
Таким образом, мы фактически через CSS сделали внешний вид как у type="image", но при этом использовали всего лишь type="submit", у которого лишних параметров уже нет.
Вот такие способы удаления координат в адресной строке у кнопки с изображением Вы можете использовать.
-
- Михаил Русаков
Комментарии (0):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.