Как установить действие формы через JavaScript?

У меня есть HTML-форма, действие которой должно быть установлено динамично через JavaScript. Как я делаю это? Вот то, чего я пытаюсь достигнуть:

<script type="text/javascript">
function get_action() { // inside script tags
 return form_action;
 }
</script>

<form action=get_action()>
...
</form>
52
задан vaxquis 5 July 2014 в 08:25
поделиться

4 ответа

Вы не можете вызывать функции JavaScript в стандартных атрибутах HTML, кроме в XXX . Просто назначьте его во время загрузки окна.

<script type="text/javascript">
    window.onload = function() {
        document.myform.action = get_action();
    }

    function get_action() {
        return form_action;
    }
</script>

<form name="myform">
    ...
</form>

Вы видите, что я дал форме имя , так что она легко доступна в документе .

Вы также можете сделать это во время события submit :

<script type="text/javascript">
    function get_action(form) {
        form.action = form_action;
    }
</script>

<form onsubmit="get_action(this);">
    ...
</form>
67
ответ дан 7 November 2019 в 09:06
поделиться
document.forms[0].action="http://..."

... при условии, что это первая форма на странице.

2
ответ дан 7 November 2019 в 09:06
поделиться

Обычный JavaScript:

document.getElementById('form_id').action; //Will retrieve it

document.getElementById('form_id').action = "script.php"; //Will set it

Использование jQuery ...

$("#form_id").attr("action"); //Will retrieve it

$("#form_id").attr("action", "/script.php"); //Will set it
60
ответ дан 7 November 2019 в 09:06
поделиться

Делайте, как говорит Рабботт, или если вы отказываетесь от jQuery:

<script type="text/javascript">
function get_action() { // inside script tags
  return form_action;
}
</script>

<form action="" onsubmit="this.action=get_action();">
...
</form>
1
ответ дан 7 November 2019 в 09:06
поделиться
Другие вопросы по тегам:

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