gpt4 book ai didi

javascript - jQuery 不序列化文本输入,尽管它已被填充

转载 作者:行者123 更新时间:2023-11-30 15:31:44 25 4
gpt4 key购买 nike

我有以下内容

<form id="formie">
<label class="block-label form-inline" id="color">
<input type="radio" name="color" value="custom">
Custom (<a href="http://www.ralcolor.com/" target="_blank">RAL Colors</a>)
</label>
<input type="text" class="form-control" id="custom_color" name="custom_color" value="" onChange="select_color(this)" placeholder="RAL code">
</form>

(onChange(select_color(this)) 对这个问题没有任何作用,如果我删除它,它仍然是一样的)

和代码

$('#formie').change(function(){
str = $('#formie :input[value!=""]').serialize();
alert($('#custom_color').val());
});

如果用户点击 radio ,它会触发 .change() 事件和 str = "color=custom",警报为空白。如果用户填写文本字段,事件将再次触发,但 str 值仍然相同(文本字段的值未序列化),警报会说明字段中正确填写的内容。

如果我从文本字段标记中删除 value="",文本字段总是被序列化 - 就在单击单选按钮 str = "color=custom&custom_color=" .如果您随后填写一些内容,它会被正确序列化,例如。 str = "color=custom&custom_color=kek"

为什么我想过滤掉空的却没有序列化?

最佳答案

我找到了很多使用您的代码的答案。有人说它有效,有人说它无效。

请试试这段代码,它应该适用于任何 jQuery 版本:

var str = $("#formie").find(":input").filter(function () 
{
return $.trim(this.value).length > 0;
}).serialize();

关于javascript - jQuery 不序列化文本输入,尽管它已被填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42156564/

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