Javascript 更改表格“;行动“;论选择

Javascript 更改表格“;行动“;论选择,javascript,html,forms,Javascript,Html,Forms,我仍在学习javascript,需要一些帮助来更改基于所选选项值的表单“action”。请参阅下面的html代码: <form method="post" title="myForm" id="myForm" name="myForm" action="test_auth.php"> <fieldset> <legend>Request Details</legend> <p><label>Brand: &l

我仍在学习javascript,需要一些帮助来更改基于所选选项值的表单“action”。请参阅下面的html代码:

<form method="post" title="myForm" id="myForm" name="myForm" action="test_auth.php">
<fieldset>
    <legend>Request Details</legend>
    <p><label>Brand: </label>
        <select id="Brand" name="Brand">
            <option value"">Select...</option>
            <option value="brand">Brand 1</option>
            <option value="brand">Brand 2</option>
            <option value="brand">Brand 3</option>
            <option value="brand">Brand 4</option>
            <option value="brand">Brand 5</option>
        </select> 
    </p>
    <br />
<p class="submit"><input class="button" name="Submit" type="submit" value="Submit" onclick="actionDetermine();" /></p>
很明显,上面有问题,有人能帮我吗

干杯

我会交换

<input class="button" name="Submit" type="submit" value="Submit" onclick="actionDetermine();" />

我很确定这就是你需要做的,尽管我已经很久没有搞乱表单了

您还可以在数据集中定义操作:

<form method="post" title="myForm" id="myForm" name="myForm" onsubmit="submit_function(this)"    action="test_auth.php">
    <fieldset>
    <legend>Request Details</legend>
    <label>Brand: </label>
    <select id="Brand" name="Brand">
        <option value"">Select...</option>
        <option value="brand 1" data-action="test.php">Brand 1</option>
        <option value="brand 2">Brand 2</option>
        <option value="brand 3">Brand 3</option>
        <option value="brand 4">Brand 4</option>
        <option value="brand 5">Brand 5</option>
    </select> 
    <button class="button" name="Submit" value="Submit">Submit</button>
    </fieldset>
</form>

可能是@andrewtweber的重复不是因为这不是真的jquery@NickChapman他的代码不是,但他在文章中的第一句话说,他正在使用jQuery以及标记。谢谢Nick,这也非常有效!但是,由于“选项值”与另一个应用程序交互,因此无法更改。
<input class="button" type="button" value="Submit" onclick="actionDetermine();" />
var actions = ['brand1_process.php', 'brand2_process.php', 'brand3_process.php', 'brand4_process.php'];
//actions correspond to the values of the selector

var brand = document.getElementById('Brand').value;
brand = brand-1;

document.getElementById('myForm').setAttribute('action', actions[brand]);
document.getElementById('myForm').submit();
<form method="post" title="myForm" id="myForm" name="myForm" onsubmit="submit_function(this)"    action="test_auth.php">
    <fieldset>
    <legend>Request Details</legend>
    <label>Brand: </label>
    <select id="Brand" name="Brand">
        <option value"">Select...</option>
        <option value="brand 1" data-action="test.php">Brand 1</option>
        <option value="brand 2">Brand 2</option>
        <option value="brand 3">Brand 3</option>
        <option value="brand 4">Brand 4</option>
        <option value="brand 5">Brand 5</option>
    </select> 
    <button class="button" name="Submit" value="Submit">Submit</button>
    </fieldset>
</form>
function submit_function(form) {
    var selected = document.getElementById('Brand');
    var dataset = selected[selected.selectedIndex].dataset;

    if (dataset.action) {
        form.action = dataset.action;
    }
    return true;
};