Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > как узнать каким субмитом была субмичена форма


Автор: nnm2005 8.11.2006, 17:38
Проблема такая: есть форма, у неё несколько субмитов. Перед отправкой формы после нажатия на один из этих сумбитов нужно выкидывать различные алерты. как в джава скрипте на событие OnSubmit узнавать какой сумбит был нажат?

Добавлено @ 17:52 
Сделать надо одной функцией, то есть варианты
<input type=submit onclick="return test1">
<input type=submit onclick="return test2"> не подходят 

Автор: griker 8.11.2006, 18:03
Поскольку форма отправляется при нажатии на кнопку submit, то лучше всего просто задать каждой кнопке событие onClick с соответсвующим alert
Код

<input type="submit" value="Submit" onClick="alert('Submit input 1');">
<input type="submit" value="Submit" onClick="alert('Submit input 2');">
<input type="submit" value="Submit" onClick="alert('Submit input 3');">
<input type="submit" value="Submit" onClick="alert('Submit input 4');">

Автор: GIK 8.11.2006, 18:29
griker, веселый ты человек, я когда твой код скопировал, очень долго искал submitы  smile 
вот еще вариантик:
Код

<html>
<head>
<title>сортировка строк в таблице</title>
<script type="text/javascript">

function ection(val){
alert(val);
return true;
}
</script>
<body>
<input type="submit" value="Submit1" onMouseOver="return ection(this.value)">
<input type="submit" value="Submit2" onClick="return ection(this.value)">
<input type="submit" value="Submit3" onClick="return ection(this.value)">
<input type="submit" value="Submit4" onClick="return ection(this.value)">
</body>
</html>


Автор: SelenIT 8.11.2006, 19:38
Цитата(nnm2005 @  8.11.2006,  17:38 Найти цитируемый пост)
как в джава скрипте на событие OnSubmit узнавать какой сумбит был нажат?

На onsubmit - боюсь что никак... А на onclick формы - легко и весело:
Код

<form onsubmit="alert('Отправляю...');return false" onclick="t=event.target||event.srcElement; if(t.tagName.toLowerCase()=='input' && t.type.toLowerCase()=='submit') alert('Нажата кнопка '+t.value)">
<input type="submit" value="Submit1">
<input type="submit" value="Submit2">
<input type="submit" value="Submit3">
<input type="submit" value="Submit4">
</form>


Хотя... если очень постараться - то можно и на onsubmit (хоть и не без помощи onclick-а):
Код

<form onsubmit="if(this.sender) alert('Нажата кнопка '+this.sender); else alert('Нажат Enter)');return this.sender=false;" onclick="t=event.target||event.srcElement;if(t.tagName.toLowerCase()=='input'&&t.type.toLowerCase()=='submit')this.sender=t.value">
<input type="text">
<input type="submit" value="Submit1">
<input type="submit" value="Submit2">
<input type="submit" value="Submit3">
<input type="submit" value="Submit4">
</form>

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)