gpt4 book ai didi

javascript - 动态更改表单操作 URL 无效

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:28:50 26 4
gpt4 key购买 nike

当动态更改表单操作 URL 时,当表单提交时,它仍将使用默认操作 URL,有人知道为什么吗?请看下面的一个简单示例:

<form action="test.php" method="get" id="test">
<select name="id" onChange="formSubmit(this)">
<option value="abc">abc</option>
<option value="xyz">xyz</option>
</select>
</form>

<script type="text/javascript">
function formSubmit(element){
var url = $("#test").attr("action", url);
var newParam = "&new=123";

url += "?" + element.name + "=" + element.value + newParam;
//e.g. formurl now = 'test.php?id=xyz&new=123';

$("#test").attr("action", url);
$("#test").submit();//the form will submit to test.php?id=xyz instead of the new URL
}
</script>

谢谢。

最佳答案

您最初在第一行将空值分配给 url 变量:

var url = $("#test").attr("action", url);

应该是:

var url = $("#test").attr("action");

您还需要使用 get 获取 form 元素或 [0] 速记:

$("#test")[0].submit();

你的函数应该是这样的:

function formSubmit(element){
var url = $("#test").attr("action");
var newParam = "&new=123";
url += "?" + element.name + "=" + element.value + newParam;
$("#test").attr("action", url);
$("#test")[0].submit();
}

关于javascript - 动态更改表单操作 URL 无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3690010/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com