Менять кнопку ввода на изображение?

0

Вы можете просмотреть страницу, на которую я имею в виду:

http://portal.escalatehosting.com/cart.php?a=add&pid=9

Просто введите произвольное доменное имя, а затем вы увидите две кнопки внизу. Первая кнопка (меньшая) работает правильно, но вторая кнопка (больше) не добавляет заказ в корзину покупок.

Здесь код для первой кнопки:

<input type="button" value="{$LANG.checkout} &raquo;" class="checkout" onclick="addtocart();" />

Здесь код второй кнопки, который не работает:

<input type="image" src="http://www.escalatehosting.com/images/continueorder.jpg" style="border:0px;" onclick="addtocart();" />

Я просто пытаюсь заменить первую кнопку на вторую, чтобы изображение использовалось, но не может заставить вторую кнопку работать правильно. Что я сделал не так? Я изменил type на image и добавил src.

  • 0
    Почему вы используете входной тип = 'изображение' вместо изображения (<img)?
  • 0
    Как бы я вводил с помощью <img не используя input type='image' - у меня сложилось впечатление, что это необходимо для отправки формы ...
Показать ещё 3 комментария
Теги:

4 ответа

2
Лучший ответ

вместо изменения типа и src просто добавьте стиль к нему

<input type="button" style=" background: url('someimage.jpg') no-repeat; width:100px;height:30px; border:none;" />
1

проблема здесь в том, что простой input type="BUTTON" не отправляет форму, но input type="IMAGE"

поэтому, если вы проверите то, что на самом деле называется, вы увидите:

  1. нажмите изображение, добавлен addtocart
  2. addtocart пытается выполнить запрос ajax
  3. форма отправляется браузером, все запросы ajax прерываются

вот почему он не работает

чтобы заставить его работать, измените код:

<input type="image" src="http://www.escalatehosting.com/images/continueorder.jpg" style="border:0px;" onclick="addtocart();return false;" />
0
<input type="button" style="background:url(http://www.escalatehosting.com/images/continueorder.jpg) no-repeat; width:600px; height:100px; border: 0px;" class="checkout" onclick="addtocart();" />

сохраняя некоторые из тех настроек, которые вы играли с шириной и высотой, пока не будет выглядеть правильно, и это должно сработать.

Я лично предпочел бы атрибут css вместо источника.

  • 0
    Я уже ответила :)))
0

Я думаю, вы неправильно понимаете, что каждый делает

<input type="image" src="my/path" />

Это то же самое, что и <input type="submit"/>. Он использовал для отправки формы. type="image" просто использует изображение вместо кнопки.

Вы хотите, чтобы ваше событие onclick было запущено. Вероятно, это противоречит вашей форме. Поэтому вам нужно использовать тег изображения

<img src="http://www.escalatehosting.com/images/continueorder.jpg" style="border:0px;" onclick="addtocart();" />

На самом деле вы можете привязать событие onclick к любому объекту. Это просто не работает, чтобы ваша форма была представлена одновременно.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню