субмит формы по ссылке вместо кнопки

И всё прочее, что касается HTML
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
OSBoy
сержант
Сообщения: 228
Зарегистрирован: 2007-04-09 12:17:50
Откуда: Из капусты

субмит формы по ссылке вместо кнопки

Непрочитанное сообщение OSBoy » 2007-09-26 11:59:33

Вот имеется примерно такая форма:

Код: Выделить всё

<form action="[~[*id*]~]" method="POST">
<table cellpadding="0" callspacing="0">
<tr>
<td class="wlleft">Логин: </td>
<td class="wlright"><label for="wlpeUsername"><input class="wlright" type="text" name="username" /></label></td>
</tr>
<tr>
<td class="wlleft">Пароль: </td>
<td class="wlright"><label for="wlpePassword"><input class="wlright" type="password" name="password" /></label></td>
</tr>
<tr>
<td colspan=2 class="wlcenter">
<button type="submit" name="service" value="login">Войти</button>
</td>
</tr>
<tr>
<td colspan=2>
<button type="submit" name="service" value="forgot">Forgot Password</button><br>
<button type="submit" name="service" value="registernew">Register</button>
</td>
</tr>
</table>
</div>
</form>
Вот как тут заменить кнопки "Forgot Password" и "Register" на простые ссылки?
Я смотрел примеры типа:

Код: Выделить всё

<a href="javascript: document.forms['formname'].submit();"> GO </a>
Но тут всё привязано к name. А у меня то три кнопки в одной форме, причём каждая из них - type="submit" name="service", а отличаются только значением Value. Что можно сделать в моём случае?

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35462
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: субмит формы по ссылке вместо кнопки

Непрочитанное сообщение Alex Keda » 2007-09-26 14:21:44

имя поменять.
а на строне сервера разбирать чё прислали.
для упрощения можно добавить hidden поля
Убей их всех! Бог потом рассортирует...

Аватара пользователя
mephius
рядовой
Сообщения: 19
Зарегистрирован: 2007-10-23 14:24:40

Re: субмит формы по ссылке вместо кнопки

Непрочитанное сообщение mephius » 2008-01-12 11:20:42

а если очень не хочется трогать серверную сторону, то можно js-ом кликать на нужную кнопку, которую (чтоб не видно было) вынести куда-нить за экран

Код: Выделить всё

<form action="[~[*id*]~]" method="POST">
<table cellpadding="0" callspacing="0">
<tr>
<td class="wlleft">Логин: </td>
<td class="wlright"><label for="wlpeUsername"><input class="wlright" type="text" name="username" /></label></td>
</tr>
<tr>
<td class="wlleft">Пароль: </td>
<td class="wlright"><label for="wlpePassword"><input class="wlright" type="password" name="password" /></label></td>
</tr>
<tr>
<td colspan=2 class="wlcenter">
<button type="submit" name="service" value="login">Войти</button>
</td>
</tr>
<tr>
<td colspan=2>
<button type="submit" id="fgt-button" style="position: absolute; top: -100px; left: -100px" name="service" value="forgot">Forgot Password</button><br>
<button type="submit" id="reg-button"style="position: absolute; top: -100px; left: -100px" name="service" value="registernew">Register</button>
<a href="#" onclick="document.getElementById('fgt-button').click(); return false">Forgot Password</a><br />
<a href="#" onclick="document.getElementById('reg-button').click(); return false">Register</a>
</td>
</tr>
</table>
</div>
</form>
или вот так (используя хидден поле и меняя ему значение):

Код: Выделить всё

<form id="frm" action="[~[*id*]~]" method="POST">
<input type="hidden" name="service" id="service" value="" />
<table cellpadding="0" callspacing="0">
<tr>
<td class="wlleft">Логин: </td>
<td class="wlright"><label for="wlpeUsername"><input class="wlright" type="text" name="username" /></label></td>
</tr>
<tr>
<td class="wlleft">Пароль: </td>
<td class="wlright"><label for="wlpePassword"><input class="wlright" type="password" name="password" /></label></td>
</tr>
<tr>
<td colspan=2 class="wlcenter">
<button type="submit" name="service" value="login">Войти</button>
</td>
</tr>
<tr>
<td colspan=2>
<!-- Кнопки убираем //-->
<a href="#" onclick="document.getElementById('service').value='forgot'; document.getElementById('frm').submit(); return false">Forgot Password</a><br />
<a href="#" onclick="document.getElementById('service').value='registernew'; document.getElementById('frm').submit(); return false">Register</a>
</td>
</tr>
</table>
</div>
</form>
Вариантов масса :)

Аватара пользователя
paranoidchaos
мл. сержант
Сообщения: 80
Зарегистрирован: 2007-12-13 10:58:23

Re: субмит формы по ссылке вместо кнопки

Непрочитанное сообщение paranoidchaos » 2008-01-12 17:12:34

можешь сделать как я
вставляю дополнительное хидден поле и при нажатие на какую-либо из кнопок присваивать этому хиддену значение

Код: Выделить всё

<form action="index.php" name="forma" method="POST">
<input type="button" value="DELETE" onclick="document.getElementByID('hid').value = 'delete'; document.forms['forma'].submit()">
<input type="button" value="UPDATE" onclick="document.getElementByID('hid').value = 'update'; document.forms['forma'].submit()">
<input type="hidden" id="hid" name="action" value="#">
</form>
вот и всё
а на php можна так

Код: Выделить всё

if(isset($_POST['action']) && !empty($_POST['action'])){
   
    switch($_POST['action']){
              case 'delete': // action delete
                                  break;
              case 'update': // action update
                                   break;
    }
}