PHP & Javascript

maxon

Новичок
А возможно-ли по onchange изменить target формы?
Т.е. выбирать какому скрипту отправлять данные. Это важно, так как есть два разных скрипта PHP и CGI.
 

kruglov

Новичок
Target - это окно, action - это обработчик

<input type=submit onclick="this.form.action='/xxx.php'">
 

maxon

Новичок
Автор оригинала: kruglov
Target - это окно, action - это обработчик

<input type=submit onclick="this.form.action='/xxx.php'">
Не совсем то. Есть форма с полями ввода и полем select:

<form action="../../cgi-bin/l.cgi" method=post>

<input name="login" type="text" value="">
<input name="passw" type="password" value="">
<input type="submit" value="Вход">

<select name="acttype">
<option value='1'>Действие 1
<option value='2'>Действие 2
</select>

Если выбираем "действие 1", то форма должна отдать данные на ../cgi-bin/l.cgi . Если "действие 2", то форма должна отдать свои данные другому скрипту.
 

mike

pmcoder
Присвой елементам id или name

<form action="../../cgi-bin/l.cgi" method=post name="NAMEFORM">
<select name="acttype" name = "SELECTNAME">

Делаешь обработчик события ONCLICK для
<input type="submit" value="Вход">

В нем пишешь

getElementByName('NAMEFORM').action = ...

В зависимости от getElementByName('SELECTNAME').value = ...

Кстати пора на другой форум
 

maxon

Новичок
Что то не пойму. Если я делаю так:

<input type="submit" value="Войти" onclick="getElementByName('NAMEFORM').action=./action.php">

то при нажатии сабмит выполниться action.php ? При этом результат выполнения скрипта должен отображаться?

Пожалуйста, покажи рабочий пример, если не трудно, конечно.

Если есть, кинь ссылочку на другой форум.

Спасибо.
 

kruglov

Новичок
maxon
Рабочий пример я давал. А у вас мало кавычек. И вообще что-то вы не то делаете... Употребляете страшные заклинания вроде 'NAMEFORM', не понимая, что это, вообще-то, имя формы.

Можно дать вам готовый пример, но что он вам даст и чему научит?

А, ладно...

<form action=script1.php>
<select onchange="this.form.action=this.value">
<option value="script1.php">1
<option value="script2.php">2
</select>
<input type=submit>
</form>


JS очень похож на C, и PHP очень похож на C. Поэтому js немного похож на php. И его не надо пугаться. Только надо понять, что точки в js - это не конкатенация, а иерархия при вызове объектов. Аналог в PHP - "->"
 

maxon

Новичок
Огромное сапсибо. Теперь все понял. Про точки знаю и про структуру тоже. Но опыта мало.
 

kruglov

Новичок
Предвосхищая возмущенные вопросы типа "select.value не кроссбраузерно" от знатоков Javascript, скажу, что нафиг. То, где это не кроссбраузерно, вышло из моды еще в том веке.
 
Сверху