Подтвердить что ты не робот

Укажите атрибут действия формы при отправке?

Как изменить атрибут действия формы сразу после нажатия кнопки отправки?

4b9b3361

Ответ 1

Присоединитесь к событию отправки click и измените атрибут action в обработчике событий.

Ответ 2

<input type='submit' value='Submit' onclick='this.form.action="somethingelse";' />

Или вы можете изменить его вне формы, а javascript - обычным способом:

 document.getElementById('form_id').action = 'somethingelse';

Ответ 3

Вот простой способ сделать это, если вам нужно только поддерживать современные браузеры: в своей кнопке отправки добавьте атрибут formaction="/alternate/submit/url", например:

<form>
    [fields]
    <input type="submit" value="Submit to a" formaction="/submit/a">
    <input type="submit" value="submit to b" formaction="/submit/b">
</form>

Он также работает с тегами <button>.

Получено, что старые версии IE (< 10) и Android-браузер (< 4.0) не поддерживают его. Итак, если вам нужно поддерживать старые браузеры, тогда существующие ответы JS, вероятно, будут работать лучше для вас.

Дополнительная информация: http://www.wufoo.com/html5/attributes/13-formaction.html

Ответ 4

Вы также можете установить значение атрибута onSubmit в теге формы. Вы можете установить его значение с помощью Javascript.

Что-то вроде этого:

<form id="whatever" name="whatever" onSubmit="return xyz();">
    Here is your entire form
    <input type="submit">
</form>;

<script type=text/javascript>
function xyz() {
  document.getElementById('whatever').action = 'whatever you want'
}
</script>

Помните, что onSubmit имеет более высокий приоритет, чем атрибут действия. Поэтому всякий раз, когда вы указываете значение onSubmit, эта операция будет выполнена сначала, а затем форма переместится в действие.

Ответ 5

Вы можете сделать это на стороне javascript.

<input type="submit" value="Send It!" onClick="return ActionDeterminator();">

При нажатии кнопки JavaScript функция ActionDeterminator() определяет URL альтернативного действия. Пример кода.

function ActionDeterminator() {
  if(document.myform.reason[0].checked == true) {
    document.myform.action = 'http://google.com';
  }
  if(document.myform.reason[1].checked == true) {
    document.myform.action = 'http://microsoft.com';
    document.myform.method = 'get';
  }
  if(document.myform.reason[2].checked == true) {
    document.myform.action = 'http://yahoo.com';
  }
  return true;
}

Ответ 6

Форматирование HTML5 не работает на старых браузерах IE. Легкое исправление, основанное на некоторых из приведенных выше ответов, следующее:

<button onclick="this.form.action='/PropertiesList';" 
    Account Details </button>