gpt4 book ai didi

jquery:如何在提交之前从表单中删除空白字段?

转载 作者:行者123 更新时间:2023-12-03 21:33:01 24 4
gpt4 key购买 nike

我有一个页面,上面有一组表单,用于 API 测试。由于不值得解释的原因,我通常不想在向服务器提交的内容中包含空字段。如何在提交之前删除数据中的空白字段?

例如,如果我有一个包含两个字段(foo 和 bar)的表单,并且用户将 bar 留空,我希望服务器看到提交,就好像唯一的字段是 foo 一样。

我的第一次尝试涉及使用 jquery 循环遍历字段

$("form").submit(function() {
$(this).children(':input').each(...)
}

并删除该字段。但是a)不起作用,b)似乎会从页面上的可见表单中删除该字段,这不是我想要的。

另一种方法可能是循环遍历字段并使用具有除“”之外的值的字段手动构造提交字符串。那行得通吗?还有更好的想法吗?

最佳答案

一种方法是在这些字段上设置“disabled”属性,这会阻止它们的值被序列化并发送到服务器:

$(function()
{
$("form").submit(function()
{
$(this).children(':input[value=""]').attr("disabled", "disabled");

return true; // ensure form still submits
});
});

如果您有客户端验证,您还需要在验证失败时重新启用这些字段:

$(':input').removeAttr("disabled");

编辑:修复了错误

关于jquery:如何在提交之前从表单中删除空白字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5904437/

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