gpt4 book ai didi

javascript - jQuery 验证 - 比较同一类的值

转载 作者:行者123 更新时间:2023-11-27 23:26:34 24 4
gpt4 key购买 nike

我有 x 个具有相同类名的文本框。我希望用户在其中输入日期,并且每个日期都应该大于前一个日期。我怎样才能实现这个目标?

jQuery -

jQuery.validator.addMethod("greaterrule", function(value, element, param) {
return $(param).not(element).get().every(function(item) {
return $(item).val() < value;
});
}, "Please specify a greater value");


jQuery.validator.addClassRules("dept_date", {
greaterrule: ".dept_date"
});

HTML -

First Date <input type="text" name="first_date" class="dept_date"> <br>
Second Date <input type="text" name="second_date" class="dept_date"> <br>
Third Date <input type="text" name="third_date" class="dept_date"> <br>
Fourth Date <input type="text" name="fourth_date" class="dept_date"> <br>

最佳答案

尝试使用 prevAll 检查之前的所有日期并使用 Date 进行比较:-

jQuery.validator.addMethod("greaterrule", function(value, element, param) {

return $(element).prevAll(param).get().every(function(prev) {
return new Date($(prev).val()) < new Date($(element).val());
});

}, "Please specify a greater value");


jQuery.validator.addClassRules("dept_date", {
greaterrule: ".dept_date"
});

$("form").validate();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.14.0/jquery.validate.min.js"></script>

<form method="post">
First Date
<input type="text" value="01/21/2016" name="first_date" class="dept_date">
<br>Second Date
<input type="text" value="01/22/2016" name="second_date" class="dept_date">
<br>Third Date
<input type="text" value="01/23/2016" name="third_date" class="dept_date">
<br>Fourth Date
<input type="text" value="01/24/2016" name="fourth_date" class="dept_date">
<br>
<input type="submit" value="submit" />
</form>

关于javascript - jQuery 验证 - 比较同一类的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34918971/

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