Son eleman .() her set | Netgez.com
SORU
24 EKÄ°M 2010, Pazar


Son eleman .() her set

Basit bir form doğrulama yapıyorum, doğrulama eklentisi benim için yapamayacağı bazı şeyler özel ihtiyaçları olan bir sorunu var. Temelde, adı, e-posta ve mesaj alan var, hepsi gerekli, ama e-posta gerçekten doğrulanır sadece, diğerleri sadece onlar değil boş olmadığını kontrol etmek gerekir. İşte benim geçerli kod:

$("#contactMe form").submit(function() {
    var email = $('.requiredEmail').val();
    if(email != 0)  {
        if(isValidEmailAddress(email))  {
            $('.requiredText').each(function() {
                thisVal = $(this).val();
                var $this = $(this);
                if(thisVal != 0) {
                    console.log('Valid Field: ' thisVal);
                    if ($(this) == $(this).parent(':last')) {
                        console.log('Last field, submit form here');
                    }
                }
            });
        } else {
            console.log('Email Not Valid');
        }
    } 
    return false;
});

Sadece açıklamak için, e-posta adresi çalışan isValidEmailAddress fonksiyonu ile geçerli olup ilk kontrol ediyorum. Sonra her kullanmaya başladım(), tüm requiredText alanları ve onlar değilse boş bakıyorum. Son requiredText alana vardığımda, ne olursa olsun form kullanarak post ya da göndermek istiyorum.

if ($(this) == $(this).parent(':last')) { var açıkcası Ne yanlıştır ama her sonuç kümesinde son, ve eğer gerçek bir eylem olmadığını kontrol etmek için kullanılır ne olduğundan emin değilim.

Biri bana yardım edebilir mi?

Şimdiden teşekkürler.

CEVAP
24 EKÄ°M 2010, Pazar


each işlev index element geçer. Set uzunluğu karşı index kontrol ve gitmek için iyi bir konum:

var $set = $('.requiredText');
var len = $set.length;
$set.each(function(index, element) {
      thisVal = $(this).val();
      var $this = $(this);
      if(parseInt(thisVal) != 0) {
          console.log('Valid Field: ' thisVal);
          if (index == len - 1) {
              console.log('Last field, submit form here');
          }
      }
});

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VÄ°DEO

Rastgele Yazarlar

  • Electro Posé

    Electro PosÃ

    21 ÅžUBAT 2013
  • Mark Brown

    Mark Brown

    9 HAZÄ°RAN 2010
  • MrOctopi

    MrOctopi

    6 Aralık 2010