|
|
#1 (permalink) |
|
Üyelik Tarihi: 26.09.2000
Yer: istanbul
Mesaj: 252
|
süre dolunca buton aktif hale gelsin
test var bu test süresi databaseden geliyor, benim istediğim testin bu sureye gore sonlandırılması yani 20 dakikalık bir test 20 dakika dolduğunda, sonuçlandırma butonu işleve geçsin böyle bi java script örneği olan varmı arkadaşlar ?
__________________
khssi.. |
|
|
|
|
|
#3 (permalink) |
|
Üyelik Tarihi: 26.09.2000
Yer: istanbul
Mesaj: 252
|
20000 yazılan yer 20 dakikamı olmuş oluyor ?
Sayfa açıldığı an butonu aktif hale getiriyor. Sanırım bi sorun var, yaptıklarımı yazayım. <BODY onLoad="a()"> onload olarak yazdım fonksiyonu. <script LANGUAGE="JavaScript"> <!-- function a(){ document.forms['kuen'].submit(); } <% DIM ZAMAN ZAMAN = RS("TEST_SURE") * 10000 %> setTimeout('a', <% RESPONSE.WRITE ZAMAN %>); //--> </script> hemen aktif hale geliyor. bu şekildede fonksiyonun içine aldım böylede olmadı. <script LANGUAGE="JavaScript"> <!-- function a(){ document.forms['kuen'].submit(); <% DIM ZAMAN ZAMAN = RS("TEST_SURE") * 1000 %> setTimeout('a', <% RESPONSE.WRITE ZAMAN %>); } //--> </script>
__________________
khssi.. |
|
|
|
|
|
#4 (permalink) |
|
Üyelik Tarihi: 26.09.2000
Yer: istanbul
Mesaj: 252
|
Benim başka bi sorunum daha var aslında onuda sorayım.
Bu işi ASP ile yapıyorum ama bana kişinin browserından yapmam gerekiyor, ASP ile yaptığım örnek şu.. DIM BAY, BGUN, BYIL, BSAAT, BDAKIKA, BSANIYE BAY = MONTH(NOW) BGUN = DAY(NOW) BYIL = YEAR(NOW) BSAAT = HOUR(NOW) BDAKIKA = MINUTE(NOW) IF BDAKIKA + RS("TEST_SURE") > 60 THEN BSAAT = BSAAT + 1 BDAKIKA = BDAKIKA + RS("TEST_SURE") - 60 ELSE BDAKIKA = BDAKIKA + RS("TEST_SURE") END IF BSANIYE = SECOND(NOW) SELECT CASE BAY CASE "1" BAY = "Jan" CASE "2" BAY = "Feb" CASE "3" BAY = "Mar" CASE "4" BAY = "Apr" CASE "5" BAY = "May" CASE "6" BAY = "Jun" CASE "7" BAY = "Jul" CASE "8" BAY = "Aug" CASE "9" BAY = "Sep" CASE "10" BAY = "Oct" CASE "11" BAY = "Nov" CASE "12" BAY = "Dec" CASE ELSE END SELECT DIM FORMATLITARIH FORMATLITARIH = BAY & " " & BGUN & " " & BYIL & " " & BSAAT & ":" & BDAKIKA & ":" & BSANIYE saat = new date(); saat.getminutes(); saat.getseconds(); gibi saniyeyi dakikayı günü herşeyi alıp üstteki örnekteki gibi formatlamam lazım, bunu formatlamamım nedeni yine JavaScript ile yapacağım script içine formatlı şekilde yerleştirmek.. "Jan 1 2005 14:00:00" format bu. buradaki dakika kısmına databaseden gelen değeri Response.write "gelensure =" & RS("TEST_SURE") JavaScript in içine değişken olarak atayacağım bunuda yukaridaki dakika ile toplatacağım fakat üstteki formatı gerçekleştiremiyorum, aslında ben bunu ASP ile yaptım fakat süre serverdan oldumu olmuyor, now = new Date(); y2k = new Date("<% RESPONSE.WRITE FORMATLITARIH%>"); biri serverdan biri browserdan gelirse kullanıcı saati ileri alarak süreyi yükseltebilir bunu istemiyorum.
__________________
khssi.. |
|
|
|
|
|
#5 (permalink) |
|
Üyelik Tarihi: 07.10.2002
Yer: İstanbul
Yaş: 26
Mesaj: 986
|
niyetin tarih göstermekmi? yoksa bir süre sonra bir fonksiyon çalışsınmı onu anlayamadım. ikisinde de farklı şey anlatmışsın gibi geldi bana..
ilk sorunu yanıtlayayım. a() fonksiyonu nu onload'da çalıştırmayacaksın. sana yazdığım script bölümünü olduğu gibi head kısmını koy (<form> hariç). a() fonksiyonunun yaptığı iş, formu submit etmek. ama formu submit etmek yerine, baka sayfaya yönlendieme gibi bişide yapabilirsin, artık ne yapmak istiyosan ( document.location='baskaSayfa.HTML' ) |
|
|
|
|
|
#6 (permalink) |
|
Üyelik Tarihi: 26.09.2000
Yer: istanbul
Mesaj: 252
|
aslında ilk başta, bu olaya ben sadece süre dolunca, submit butonunu çalıştırsın gibi bişe düşünmüştüm, daha sonra bi script üzerindede çalışmalarla bunu, zamanı geriye sayarak süre dolduğunda aktif hale gelsin gibi bişe yaptım.
Amacım şuan java script ile tarihi alıp istediğim formatta fonksiyona yazdırmak. Tabi birde databaseden gelen veriyi JavaScript değişkeni gibi yazdırıp daha sonra.. aşağıdaki örnekte y2k + degisken gibi bişe yapmam lazım. <script LANGUAGE="JavaScript"> <!-- function KALANZAMAN() { now = new Date(); y2k = new Date(); // Burda y2k ya databaseden gelen veriyi değişkene atasam. // bununlada y2k + degisken desem dakika ile toplatabilirmiyim ? // yani y2k+ 20000 gibi bişe olurmu ? // tarih formatı bu olmalı. y2k = new Date("Jan 1 2005 14:00:00"); days = (y2k - now) / 1000 / 60 / 60 / 24; daysRound = Math.floor(days); hours = (y2k - now) / 1000 / 60 / 60 - (24 * daysRound); hoursRound = Math.floor(hours); minutes = (y2k - now) / 1000 /60 - (24 * 60 * daysRound) - (60 * hoursRound); minutesRound = Math.floor(minutes); seconds = (y2k - now) / 1000 - (24 * 60 * 60 * daysRound) - (60 * 60 * hoursRound) - (60 * minutesRound); secondsRound = Math.round(seconds); sec = (secondsRound == 1) ? " saniye." : " saniye."; min = (minutesRound == 1) ? " dakika, " : " dakika, "; hr = (hoursRound == 1) ? " Saat," : " Saat, "; dy = (daysRound == 1) ? " day" : " days, " // Burda süre dolunca buton aktif hale geliyor. if (daysRound <= -1) { document.timeForm.input1.value = "Süreniz Doldu."; document.forms['kuen'].submit(); } else { document.timeForm.input1.value = "Kalan Süre: "+ hoursRound + hr + minutesRound + min + secondsRound + sec; newtime = window.setTimeout("KALANZAMAN();", 1000); } } //--> </script> umarım anlatabilmişimdir. bu arada üstteki örnek için teşekkürler.
__________________
khssi.. |
|
|
|
| Sponsorlu Bağlantılar | |
|
Zoque.Forum
Reklam
|
|
Zoque'a hoşgeldiniz!