gpt4 book ai didi

javascript - 单选按钮值在提交表单时作为 "on"发送

转载 作者:行者123 更新时间:2023-12-01 00:40:35 28 4
gpt4 key购买 nike

我有一个包含三个单选按钮选项的表单。我需要将表单数据提交到另一个文件,但由于某种原因,发送的数据包含所选单选按钮的值“on”,而不是 value 属性的值。

我尝试通过 post() 函数手动操作和发送数据,但由于我需要在提交时重定向页面,这会导致 POST 请求后跟 GET 请求。这段代码的实际目的要求我将此数据发送到一个函数,该函数处理数据并决定将页面重定向到哪里。但是,该函数对于 GET 请求有不同的用途,并且当此表单发送 GET 请求时会出现错误。这种限制首先就是导致这个问题的原因。

是否有一种方法可以以某种方式获取要发布的单选按钮的值,而不仅仅是“打开”,以便从此表单仅发送一个请求?我知道唯一的方法是修改数据发送到的函数。

如果其中有任何不清楚或令人困惑的地方,请发表评论。感谢您的帮助!

代码:

<form name="send-form" class="send-form" method="POST" action="somefunction>
<input type="radio" name="option" id="1" val="1">
<input type="radio" name="option" id="2" val="2">
<input type="radio" name="option" id="3" val="3">
</form>

<script>
$(".send-form").submit(function(e){
e.preventDefault();

// get selected value
var selected = $("input[type='radio'][name='option']:checked");

// check if an option was selected
if (selected.length > 0) {
selectedValue = selected.attr("id");
$.post('somefile', {"option" : selectedValue}, function() {
window.location.href = "somefile";
});
}
} else {
alert("Please select an option");
}
});
</script>

最佳答案

您需要使用value,而不是val:

<form name="send-form" class="send-form" method="POST" action="somefunction">
<input type="radio" name="option" id="1" value="1" />
<input type="radio" name="option" id="2" value="2" />
<input type="radio" name="option" id="3" value="3" />
</form>

这将在请求中发布 option=1option=2option=3

Fiddle

关于javascript - 单选按钮值在提交表单时作为 "on"发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19577484/

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