Подтвердить что ты не робот

Как удалить x и y для отправки в HTML-форме с кнопкой "Тип изображения"?

Я создал форму в своем приложении следующим образом:

<form action="/search/" method="get">
   <input id="search-box" name="search" type="text" size=30 title="Search" value="" />
   <input id="search-submit" type="image" alt="Search" src="/images/search-button.gif" /> 
</form>

Но когда я отправляю свою форму, URL-адрес создается следующим образом:

mysitename.com/search/?search=hello&x=0&y=0

Может кто-нибудь скажет мне, почему этот x и y входят в мой URL. Если вы измените код формы ниже, чем кнопку изображения, а затем нажмите кнопку

<form action="/search/" method="get">
   <input id="search-box" name="search" type="text" size=30 title="Search" value="" />
   <input id="search-submit" type="submit" value="Search"/> 
</form>

но мне нужна кнопка изображения, чтобы моя форма выглядела хорошо. Скажите, как удалить эти параметры x и y из URL.

4b9b3361

Ответ 1

Вы всегда будете получать координаты мыши для кнопки отправки типа = "образ"

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

<input type="submit" id="search-submit" value=""
    style="background-image: url(/images/search-button.gif); border: solid 0px #000000; width: WIDTHpx; height: HEIGHTpx;" />

Ответ 2

Это координаты мыши клика. Я не верю, что есть способ предотвратить их - если вы используете <input type='image'>, тогда вы их получите. Почему это проблема? Разве вы не можете просто игнорировать их?

Ответ на ответ Prashant: Digg добавляют обработчик onclick к <input> (или, возможно, к onsubmit обработчику формы), который строит аккуратный поисковый URL и перенаправляет браузер на этот URL, а затем возвращает false, чтобы предотвратить отправку <input> самой формы. Если вы отключите JavaScript, вы увидите, что в URL-адресе вы получите параметры x и y. Умно!

Ответ 3

document.getElementById("formid").submit = function() {
    location = "/search/?search=" + encodeURIComponent( document.getElementById("search-box").value );
    return false;
};

Ответ 4

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

Например:

<input type="image" value="submit" src="sup.png" name="supprimer" />

вернет переменную php $_POST['supprimer'], а не ее координату как кнопку изображения. Надеюсь, этот трюк поможет вам.