在firefox上使用js更改表单方法

时间:2012-02-08 17:04:45

标签: javascript jquery

我需要使用javascript(jQuery或pure)更改表单的method属性。

我的表单有method =“post”,我尝试用以下内容进行更改:

$("#submit-button").click(function(){ 
    var url = $('input[id=url]').val();
    var method = $('#method option:selected').val();
    $("#form-test").attr("action", url); 
    $("#form-test").attr("method", method);
    $("#form-test").submit();
});

此代码适用于Chrome和I8,但不适用于Firefox。 操作设置正确,方法变量也正确包含“获取”或“发布”。 有什么想法吗?

已解决:我使用旧版本的jquery(复制和粘贴错误),我升级到1.7.1现在它可以使用相同的代码......

4 个答案:

答案 0 :(得分:8)

这是我的代码,它在IE / FF / Chrome

上都运行良好
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
function changeMethod() {
    $("#myPost").attr("method", "get");
}
</script>

<form method="post" id="myPost">
    <input type="text" name="abc" id="abc" value="Something" />

    <input type="submit" value="submit" onclick="changeMethod()" />
</form>

答案 1 :(得分:1)

试试这个:

$(function(){
    $("#form").attr("method", "get");
});

答案 2 :(得分:1)

您需要在声明表单后输入代码。

<form id="form"> ... </form>
<script>
   $("#form").attr("method", "get");
</script>

答案 3 :(得分:0)

也许您可以像这样编写代码

$("#myPost").prop("method","get")