有条件提交表格未发布

Conditional Submit Form Not Posting

我正在尝试找出一种方法,根据所做的选择将表单提交给不同的 page.php。

下面的代码可用于重定向,但不会将信息发布到下一页。

表格

<form id="form1" method="post" action="javascript:redirect();">
    <select id="man" name="man">
        <option value="0">0</option>
        <option value="1">1</option>
        <option value="2">2</option>
    </select>

    <button type="submit">Continue</button>
</form>

Javascript:

function redirect() {
    var Value = document.getElementById("man").value;
    if(Value == 0)
    {
        location.href = "page2.php";
    }
    else
    {
        location.href = "page3.php";
    }
}

好的,我整理好了这个。将代码更改为:

<form action="" method="post" onsubmit="return send(this);">
<select id="man" name="man">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<button type="submit">Continue</button>

<script type="text/javascript">
function send( frm ) {
    if ( frm.man.value == "0" )
        frm.action = "page2.php";
    else
        frm.action = "page3.php";
}
</script>

这是我通常用于这种情况的变体。我认为这比通过 JS 重定向更好:

HTML:

<form id="form1" method="post">
    <select id="man" name="man">
        <option value="0">0</option>
        <option value="1">1</option>
        <option value="2">2</option>
    </select>

    <button type="submit">Continue</button>
</form>

JS:

form1 = document.getElementById("form1");

form1.onsubmit = formSubmit;

function formSubmit() {
    var manValue = document.getElementById("man").value;

    if (manValue == 0) {
        form1.action = "page2.php";
    } else {
        form1.action = "page3.php";
    }
}

您只需根据选择的选项修改表单的操作。希望对你有帮助。