مؤسسة 5 الالتزام js تحقق مما إذا كان التاريخ قبل تاريخ آخر

StackOverflow https://stackoverflow.com//questions/21015006

سؤال

أنا استخدم 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.

الإجابة الطويلة هي أنه لا يمكنك حقًا استخدام الالتزام بهذا.آسف.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top