提交时更改表单操作的最佳方法

时间:2011-09-22 13:34:15

标签: php javascript jquery

基本上我有一个带有一些下拉菜单的表单,但是我希望将页面设置为表单提交的操作将基于其中一个下拉列表中选择的选项。我想坚持使用一个提交按钮,所以看起来有点棘手。有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:1)

你可以使用一些jQuery。

$("#yourDropDown").change(function() { 
    var text = $(this).children(':selected').text(); 
    $("#yourForm").attr('action', text); 
});

其中“yourDropDown”是您的下拉列表的ID,“yourForm”是您的表单的ID,以及下拉选项中的文本是要发布到的完全限定的网址。

编辑:我也同意昆汀对你帖子的评论。

答案 1 :(得分:1)

另一种方法是在表单上添加onsubmit事件处理程序。如果您的表单看起来像:

<form id="myForm" action="action1.php">
    <select id="myDropdown">
        <option value="1">Option 1</option>
        <option value="2">Option 1</option>
    </select>
    <input type="submit" value="Submit" />
</form>

添加以下javascript(在这里使用jQuery):

$(document).ready(function() {

    $('#myForm').submit(function() {
        var dropdownVal = $("#myDropdown").val();
        switch( dropdownVal ) {
            case 1:
                $(this).attr('action', 'action1.php');
                // do other stuff if you want
                break;
            case 2:
                $(this).attr('action', 'action2.php');
                // do other stuff if you want
                break;                
        }
    }

});