مؤسسة 5 الالتزام js تحقق مما إذا كان التاريخ قبل تاريخ آخر
-
21-12-2019 - |
سؤال
أنا استخدم zurb foundation 5
و abide js
للتحقق من النموذج الخاص بي.يجب أن أتحقق مما إذا DATE1
قبل أو يساوي DATE2
كيف يمكنني التحقق مما إذا كانت صالحة مع abidejs
?
المحلول
الإجابة المختصرة هي أنه لا يمكنك حقًا استخدام الالتزام بهذا.لا يسهل تطبيق Abide المقارنة التي يتعين عليك إجراؤها مع التواريخ للتحقق مما إذا كان أحدهما أكبر أو يساوي الآخر.يمكن لبعض برامج جافا سكريبت المخصصة أن تفعل ذلك نيابةً عنك، ولكنك ستجد أن الالتزام سوف يحاربك من أجل التحكم في رسائل الخطأ مما يعني أنك ستضطر إلى الالتزام بالخردة تمامًا وستقوم بكل الأخطاء في التعامل مع نفسك.
وفيما يلي توضيح لما أعنيه:
لغة البرمجة
<div class="panel">
<form data-abide class="date-form">
<div class="date-1">
<label>Date 1</label>
<input type="date">
<small class="error">This is not a valid date.</small>
</div>
<div class="date-2">
<label>Date 2</label>
<input type="date">
<small class="error">Date 2 must be a valid date and fall on or after date 1.</small>
</div>
<button type="submit">Submit</button>
</form>
</div>
جافا سكريبت
//lets do a check when one of the input values has changed
$('.date-form').on('change', '.date-1 input, .date-2 input', function() {
//lets convert our dates to values we can do a comparison with
date1 = Date.parse($('.date-1 input').val());
date2 = Date.parse($('.date-2 input').val());
//lets check that both values are valid numbers
if ($.isNumeric(date1) && $.isNumeric(date2)) {
//lets check if date 2 is not greater or equal to date one and throw an error
if (date1 > date2) {
//we have a problem add error class to date-2 for error message
$('.date-2').addClass('error');
}
}
});
هذا سوف يقاتل مع الالتزام.وهنا كمان لتوضيح ذلك http://codepen.io/anon/pen/fiKFc.
الإجابة الطويلة هي أنه لا يمكنك حقًا استخدام الالتزام بهذا.آسف.