Powered By Blogger

Minggu, 18 April 2010

Javascript Validasi 2 Tanggal

Langsung aja deh udah malem, ngantuk ah, mana besok mesti kerja lagi.

Misal kita punya tanggal awal dan tanggal akhir kayak gambar dibawah ini, nah tapi tanggal yang diinput itu kan mestinya tanggal mulai lebih kecil dari tanggal akhir.

Cara ngevalidasi paling gampang adalah pake javascript. Yah, gampang lah yang kayak gini aja mah.... tinggal compare aja tanggal mulai sama tanggal akhir tadi.
Ternyata kalo kita langsung compare inputan tadi kyk gini :
if(tgl_akhir > tgl_awal) {
alert('Tanggal tidak valid');
}else {
alert('Tanggal valid');
}
pas fungsi tadi dijalankan akan selalu masuk ke alert('Tanggal valid') walaupun tanggal nya gak bener, ini dikarenakan si javascript cuman nge-compare string doank.

Langkahnya gimana donk.....
Kita rubah dulu inputan kedua tanggal tadi menjadi bentuk tipe date();
dan yang terpenting format inputan tanggal juga harus dirubah menjadi bentuk yyyy-mm-dd.
Caranya kita pake fungsi split dengan parameter awal pemisahnya kemudian dibagi menjadi berapa bagian kedalam bentuk array;

contoh :
var str = '14-04-2010';
var awal = str.split('/',3);
hasil variable awal akan kyk begini : 14,04,2010

var str2 = '13-04-2010';
var selesai = str2.split('/',3);
hasil variable selesai akan kyk begini : 13,04,2010

udah gitu sambung lagi bagian2 yang udah di split tadi ke format yyyy-mm-dd,
var mulai = awal[2] + '-' +awal[1] + '-' + awal[0];
var akhir = selesai[2] + '-' +selesai[1] + '-' + selesai[0];

udah gitu rubah ke bentuk date() sekaligus bandingin,
if(new Date(mulai) > new Date(akhir)) {
alert('Tanggal Mulai harus lebih kecil dari tanggal akhir.');
}else {
alert('Tanggal valid.');
}













Hasilnya bisa di download disini :
http://www.ziddu.com/download/9501792/SCW.rar.html

Calendar yang dipake berasal dari link ini :
http://www.garrett.nildram.co.uk/calendar/scw.htm

4 komentar: