Jquery ile form kontrolü yapmak
Kategori Genel, jQuery Çekirdek Yapısı (jQuery Core) — cocum @ 6:24 pm
Her programcinin olmazsa olmazlarindan biri forum kontrolleridir. Forma bilgi dogru girildi diye kontrol etmek ister. Iste form kontrolü için jquery de bir kaç tane seçenek var . Ama en hosuma gideni sizinle paylasmak istedim
Hem kullanimi çok basit hemde islev olarak çok genis , ben biraz kodlada oynarak daha hos hale getirdim
Simdi Öncelikle kullandigimiz plugin jquery.validate yi ve jquery indirin. Yanliz yüklerken noktalar silindi onlari linklere bakarak güncelleyin.
Metin olarak gosterKodu kopyalaYazdir?
- <script type="text/javascript" src="jquery-1.2.6.pack.js"></script>
- <script type="text/javascript" src="jquery.validate.js"></script>
<script type="text/javascript" src="jquery-1.2.6.pack.js"></script>
<script type="text/javascript" src="jquery.validate.js"></script>
Indirdikten sonra iste kodumuz tüm hali
Metin olarak gosterKodu kopyalaYazdir?
- <html>
- <head>
- <script type="text/javascript" src="jquery-1.2.6.pack.js"></script>
- <script type="text/javascript" src="jquery.validate.js"></script>
- <script type="text/javascript">
- $(document).ready(function() {
- $('#ziyaretciformu').validate({
- rules: {
- ad: { required: true },
- ceptelefon: { required: true, number: true },
- email: { required: true, email: true },
- gorus: { required: true }
- },
- messages: {
- ad: { required: 'Ad Soyad Bos Brakmayin' },
- ceptelefon: { required: 'Cep Telefonunu Bos Birakmayin', number: 'Lütfen sadece sayi giriniz' },
- email: { required: 'E-Posta Adresinizi Bos Birakmayin', email: 'E-Posta Adresinizi yanlis girdiniz' },
- gorus: { required: 'Görüs Kismini Bos Birakmayin' }
- }
- });
- });
- </script>
- <style type="text/css">
- label.error
- {
- color: red;
- font-size: 10px;
- white-space: pre;
- float: left;
- }
- div.yazi
- {
- width:200px;
- font-family:Verdana;
- font-size:12px;
- color:blue;
- float:left;
-
- }
- div.alan
- {
-
- height:60px;
- }
- </style>
-
- </head>
- <body>
- <form method="POST" action="?" id="ziyaretciformu">
- <div class="yazi">Adiniz Soyadiniz</div><div class="alan"><input type="text" name="ad" ></div>
- <div class="yazi">Mail Adresiniz</div><div class="alan"><input type="text" name="email"></div>
- <div class="yazi">Cep Telefonu</div><div class="alan"><input type="text" name="ceptelefon"></div>
- <div class="yazi">Görüs</div><div class="alan"><textarea name="gorus"></textarea></div>
- <div class="alan"><input type="submit" value="Gönder"></div>
- </form>
- </body>
- </html>
<html>
<head>
<script type="text/javascript" src="jquery-1.2.6.pack.js"></script>
<script type="text/javascript" src="jquery.validate.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#ziyaretciformu').validate({
rules: {
ad: { required: true },
ceptelefon: { required: true, number: true },
email: { required: true, email: true },
gorus: { required: true }
},
messages: {
ad: { required: 'Ad Soyad Bos Brakmayin' },
ceptelefon: { required: 'Cep Telefonunu Bos Birakmayin', number: 'Lütfen sadece sayi giriniz' },
email: { required: 'E-Posta Adresinizi Bos Birakmayin', email: 'E-Posta Adresinizi yanlis girdiniz' },
gorus: { required: 'Görüs Kismini Bos Birakmayin' }
}
});
});
</script>
<style type="text/css">
label.error
{
color: red;
font-size: 10px;
white-space: pre;
float: left;
}
div.yazi
{
width:200px;
font-family:Verdana;
font-size:12px;
color:blue;
float:left;
}
div.alan
{
height:60px;
}
</style>
</head>
<body>
<form method="POST" action="?" id="ziyaretciformu">
<div class="yazi">Adiniz Soyadiniz</div><div class="alan"><input type="text" name="ad" ></div>
<div class="yazi">Mail Adresiniz</div><div class="alan"><input type="text" name="email"></div>
<div class="yazi">Cep Telefonu</div><div class="alan"><input type="text" name="ceptelefon"></div>
<div class="yazi">Görüs</div><div class="alan"><textarea name="gorus"></textarea></div>
<div class="alan"><input type="submit" value="Gönder"></div>
</form>
</body>
</html>
simdi nasil çalistigini açikliycam
öncelikle jquery ve validate kütüphanelerini çekiyoruz
Çalisma mantigi
safya yüklendiginde
Metin olarak gosterKodu kopyalaYazdir?
- $(document).ready(function() {
$(document).ready(function() {
id’si ziyaretciformu olan formu seçiyoruz
Metin olarak gosterKodu kopyalaYazdir?
- $('#ziyaretciformu').validate({
$('#ziyaretciformu').validate({
sonra yapmamiz gerek formun isimlerine ne kontrolü yapmak istedigimizi söylemek
required: true dersek bosmu dolumu diye kontrol eder
required: true, number: true dersek bosmu ve sayimi siye kontrol eder
email: true dersek mail kontolü yapar
dikkat etmeniz gereken kisim input taglarinin isimlerini yani name=”ad” kisimlarini aynen burdada yazmak
kontrol parametreleri jquery.validate dosyasinin içinde liste halinde var
Metin olarak gosterKodu kopyalaYazdir?
- rules: {
- ad: { required: true },
- ceptelefon: { required: true, number: true },
- email: { required: true, email: true },
- gorus: { required: true }
- },
rules: {
ad: { required: true },
ceptelefon: { required: true, number: true },
email: { required: true, email: true },
gorus: { required: true }
},
messages yani mesajlar kismi ise hata verdiginde ney yazmasini gerektigini söylüyor
Metin olarak gosterKodu kopyalaYazdir?
- messages: {
- ad: { required: 'Ad Soyad Bos Brakmayin' },
- ceptelefon: { required: 'Cep Telefonunu Bos Birakmayin', number: 'Lütfen sadece sayi giriniz' },
- email: { required: 'E-Posta Adresinizi Bos Birakmayin', email: 'E-Posta Adresinizi yanlis girdiniz' },
- gorus: { required: 'Görüs Kismini Bos Birakmayin' }
- }
messages: {
ad: { required: 'Ad Soyad Bos Brakmayin' },
ceptelefon: { required: 'Cep Telefonunu Bos Birakmayin', number: 'Lütfen sadece sayi giriniz' },
email: { required: 'E-Posta Adresinizi Bos Birakmayin', email: 'E-Posta Adresinizi yanlis girdiniz' },
gorus: { required: 'Görüs Kismini Bos Birakmayin' }
}
label.error kismi ise hata yazisinin css si istediginiz gibi degistebilirsiniz
Metin olarak gosterKodu kopyalaYazdir?
- label.error
- {
- color: red;
- font-size: 10px;
- white-space: pre;
- float: left;
- }
label.error
{
color: red;
font-size: 10px;
white-space: pre;
float: left;
}
form kisminda ise dikkat etmeniz gereken formun id’si ve inputlarin isimleri
çünkü jquery ile seçerken formun id sine göre seçiyor
bosmu dolumu diye kontrol ederken inputlarin isimlerine yani name=”" kisimlarina bakiyor
Metin olarak gosterKodu kopyalaYazdir?
- <form method="POST" action="?" id="ziyaretciformu">
- <div class="yazi">Adiniz Soyadiniz</div><div class="alan"><input type="text" name="ad" ></div>
- <div class="yazi">Mail Adresiniz</div><div class="alan"><input type="text" name="email"></div>
- <div class="yazi">Cep Telefonu</div><div class="alan"><input type="text" name="ceptelefon"></div>
- <div class="yazi">Görüs</div><div class="alan"><textarea name="gorus"></textarea></div>
- <div class="alan"><input type="submit" value="Gönder"></div>
- </form>
<form method="POST" action="?" id="ziyaretciformu">
<div class="yazi">Adiniz Soyadiniz</div><div class="alan"><input type="text" name="ad" ></div>
<div class="yazi">Mail Adresiniz</div><div class="alan"><input type="text" name="email"></div>
<div class="yazi">Cep Telefonu</div><div class="alan"><input type="text" name="ceptelefon"></div>
<div class="yazi">Görüs</div><div class="alan"><textarea name="gorus"></textarea></div>
<div class="alan"><input type="submit" value="Gönder"></div>
</form>
hepsi bu kadar
cappatcha için ise tavsiyem server tabanli kontrol etmeniz
umarim faydali olmustur
Kaynak:jQueryturk