• 10-11-2009, 17:40:17
    #1
    Eposta Aktivasyonu Gerekmekte
    3 inputum var
    1. inputa başlangıç tarihi
    2. inputa süre (ay cinsinden)
    3. sonucun yazılcağı input

    1. inputa tarih girilecek 2. inputa ay girilecek 3. inputta, 1. inputtaki tarihin 2. inputtaki tarihi kadar sonrasını gösterecek.

    Yani
    1. inputa 2009-09-30
    2. inputa 3
    yazınca
    yani 2 inputta dolunca
    3. inputta 2009-12-30
    yazacak.

    Başka bir örnek
    1. input 2009-10-29
    2. input 5
    3. inputtaki çıktı değeri : 2009-03-29

    Nasıl yapabilirim acaba
  • 10-11-2009, 23:56:45
    #2
    Üyeliği durduruldu
    HTML'in aşağıdaki gibi olduğunu farzederek:
    <input type="text" id="input1"/>
    <input type="text" id="input2" onchange="tarihayar()"/>
    <input type="text" id="input3"/>
    	function tarihayar()
    	{
    		var tarih=document.getElementById('input1').value;
    		tarih=tarih.split('-');
    		ay=tarih[1]/1;
    		yil=tarih[0]/1;
    		gun=tarih[2]/1;
    		
    		var arti=document.getElementById('input2').value;
    		ay=ay+(arti/1);
    		if (ay>12)
    		{
    			ay=ay%12;
    		}
    		
    		if (ay<10)
    		{
    			ay="0"+ay;
    		}
    		
    		document.getElementById('input3').value=yil+'-'+ay+'-'+gun;
    		
    	}

    fonksiyonu işinizi görür.. Kolay gelsin.
  • 12-11-2009, 18:38:11
    #3
    Eposta Aktivasyonu Gerekmekte
    teşekkürler hocam fakat testettim bi kaç sorun var ilk olarak sonraki yıla geçmiyo yani 2009-12-11 tarihini girdik diyelim 2 ay yazınca 2009-14-11 oluyor normalde 2010-02-11 olması gerekiyor.birde
    2009-11-12
    tarihini giriyorum
    süreye 13 diyorum
    2009-00-12 değerini veriyor.

    Biraz uğraştım çözdüm
    çalışan hali
    function tarihayar()
    	{
    		var tarih=document.getElementById('bas').value;
    		tarih=tarih.split('-');
    		ay=tarih[1]/1;
    		yil=tarih[0]/1;
    		gun=tarih[2]/1;
    		
    		var arti=document.getElementById('sure').value;
    		ay=ay+(arti/1);
    		if (ay>12)
    		{
                      ay2=Math.floor(ay/12);
                      yil=yil+ay2;
                      ay3=ay/12;
                      if(ay3==1) {
                      ay=ay%12;
                      }
                                        else{
                      
    			      if(ay3==2  || ay3==3 || ay3==4 || ay3==5 || ay3==6) 
    			      {
                      ay=12;
                      yil--;
                      }
                      else {
                      ay=ay%12;  
                      }
                     
    		}
    		} 	
    
    		if (ay<10)
    		{
    			ay="0"+ay;
    		}
    		document.getElementById('bitis').value=yil+'-'+ay+'-'+gun;
    		
    	}