Две кнопки отправки в одной форме

Я думаю, для предотвращения интерпретации HTML-анализатора браузера & lt; script & gt ;, и главным образом & lt; / script & gt; как закрывающий тег реального скрипта, однако я не думаю, что использование document.write - отличная идея для оценки блоков сценариев, почему бы не использовать DOM ...

var newScript = document.createElement("script");
...
475
задан ypnos 13 February 2009 в 21:52
поделиться

4 ответа

Если Вы дадите каждому имя, то нажатый будет отправлен до как любой другой вход.

<input type="submit" name="button_1" value="Click me">
402
ответ дан Greg 14 February 2009 в 07:52
поделиться
  • 1
    Это - что-то, что встроенный ассемблер Windows может собрать? – erjiang 12 August 2009 в 23:28

Это чрезвычайно легко протестировать

<form action="" method="get">

<input type="submit" name="sb" value="One">
<input type="submit" name="sb" value="Two">
<input type="submit" name="sb" value="Three">

</form>

, Просто помещает это в страницу HTML, нажимают кнопки и смотрят на URL

26
ответ дан Peter Bailey 14 February 2009 в 07:52
поделиться

Я думаю, что необходимо смочь считать имя/значение в Вашем ПОЛУЧАТЬ массив. Я думаю, что кнопка, которая не была нажатой привычкой, появляется в том списке.

2
ответ дан John Bubriski 14 February 2009 в 07:52
поделиться
  • 1
    забавный, хотя " Вы can' t используют функции, которые заставляют компилятор выполнить код для Вас, такой как оценка (), должностное лицо () или подобный " – ilya n. 12 August 2009 в 14:15

Решение 1:
Дайте каждому входу различное значение и сохраните то же имя:

<input type="submit" name="action" value="Update" />
<input type="submit" name="action" value="Delete" />

Затем в проверке кода для наблюдения, который был инициирован:

if ($_POST['action'] == 'Update') {
    //action for update here
} else if ($_POST['action'] == 'Delete') {
    //action for delete
} else {
    //invalid action!
}

Проблема с этим - Вы, связывают Вашу логику с пользовательским видимым текстом во входе.


Решение 2:
Дайте каждому уникальное имя и проверьте $ _POST на существование того входа:

<input type="submit" name="update_button" value="Update" />
<input type="submit" name="delete_button" value="Delete" />

И в коде:

if (isset($_POST['update_button'])) {
    //update action
} else if (isset($_POST['delete_button'])) {
    //delete action
} else {
    //no button pressed
}
824
ответ дан John Saunders 14 February 2009 в 07:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: