gpt4 book ai didi

javascript - 混淆 .serialize() 和 .serializeElements()

转载 作者:行者123 更新时间:2023-11-30 13:42:51 24 4
gpt4 key购买 nike

我目前在 ajax 请求中使用 form.serialize() 来提交联系表单,但我的问题是 form.serialize() 获取所有表单元素包括“按钮”。

示例表格:

name (input type = text)
email (input type = text)
body (text area)
submit (input type = button)
clear (input type = reset)

我只想序列化非 BUTTON、RESET 或 PASSWORD 类型的表单元素。

有没有简单的解决方案?

最佳答案

我希望如果您在按钮输入上省略名称参数,按钮将不会被序列化。我的期望是基于这样一个事实,即序列化应该模仿表单在提交时序列化的方式,并且没有名称的输入不会作为表单参数发送。我编写了一个简单的测试,似乎表明了这一点。单击“检查”按钮,您会得到“text=bob”。切换一个复选框,你会得到“cb2=on&text=bob”。永远不会包含提交按钮值。

<script type="text/javascript">
$(document).observe('dom:loaded', function() {
$('btn').observe('click', function() {
alert($('form').serialize());
return false;
});
});
</script>
</head>
<body>
<form id='form'>
Checkbox 1 <input type="checkbox" id="cb1" name="cb1" />
Checkbox 2 <input type="checkbox" id="cb2" name="cb2" /><br />
<input type='text' name='text' value='bob' />
<input type="submit" id="btn" value="Examine" />
</form>

关于javascript - 混淆 .serialize() 和 .serializeElements(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1285205/

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