gpt4 book ai didi

javascript - 当元素为空时从数组元素中删除逗号

转载 作者:行者123 更新时间:2023-11-27 22:54:03 25 4
gpt4 key购买 nike

这是我的 HTML

<input type="text" class="date_of_birth" name="date[]" value="" onkeyup="dateOfBirth('stepbirth')">
<input type="text" class="date_of_birth" name="date[]" value="" onkeyup="dateOfBirth('stepbirth')">

这是我的 javascript,用于收集每个元素的值。

var DoB = []; 
$(".date_of_birth").each(function(){
DoB.push($(this).val());
});

var newDob = DoB.slice(0,-1);

var stepVar = newDob;

它工作正常。当有更多值时,它会像这样发送值

20/02/2002,03/03/2003

这很好。但是我在每个输入字段的 keyup 事件上遇到了问题。当用户填写两个字段时,如果从一个字段中删除数据,那么它会发送这样的值..

20/02/2002,

所以我的脚本在这里停止验证因为逗号它期望像这样的值

20/02/2002,03/03/2003 

20/02/2002

如何在输入为空之前删除此处的逗号。

谢谢

最佳答案

与其删除逗号,不如从源头上解决问题。原因是您总是将值推送到数组,即使该值是空的。要解决此问题,请在调用 push() 之前检查该值。

var DoB = []; 
$(".date_of_birth").each(function() {
var value = $(this).val().trim();
if (value.length)
DoB.push($(this).val());
});

或者,您可以使用 map() 使其更简洁。如果返回 null,则该元素不会添加到数组中。

var DoB = $(".date_of_birth").map(function() {
return $(this).val().trim() || null;
});

关于javascript - 当元素为空时从数组元素中删除逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57307507/

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