+ Yanıtla
Toplam 4 sonuçtan 1 ile 4 arası olanlar

Konu Başlığı: Javascript ile radio button kontrolü (Firefox hatası)

  1. #1

    Javascript ile radio button kontrolü (Firefox hatası)

    Merhaba arkadaşlar,

    PHP ile radio button kullanarak bir test hazırlamayı düşünüyorum. Soruları boş geçmemeleri için JavaScript ile kontrol yapmayı düşündüm. Kodlar aşağıdakinin aynısı. Ama internet Explorer'da sorunsuz çalışırken Firefox'ta uyarıyı verdikten sonra devam ediyor test_coz.PHP dosyasına gidiyor.

    Yardımcı olursanız sevinirim.



    Kod:
    
    
    <script  language="JavaScript">  
    function kontrol(){  
     
    if (!(sorular.cinsiyet[0].checked || sorular.cinsiyet[1].checked)) {
    alert('1. soruyu cevaplamadiniz.');
    event.returnValue=false;
    }
    
    else if (!(sorular.alkol[0].checked || sorular.alkol[1].checked || sorular.alkol[2].checked)) {
    alert('2. soruyu cevaplamadiniz.');
    event.returnValue=false;
    }
    
    else {
    event.returnValue=true;
    }
    		
    }  
    
    </script>
    
    
    <form action="test_coz.PHP" method="post" name="sorular">
    
    		<label>1. Cinsiyetiniz :</label>
    		<input name="cinsiyet" type="radio" id="cins1" value="1" />Erkek
    		<input name="cinsiyet" type="radio" id="cins2" value="2" />Kadın<br /><br />		
    
    		<label>2. Alkol kullanıyor musunuz? :</label><br />
    		<input name="alkol" type="radio" id="alkol1" value="1" />Hiç<br />
    		<input name="alkol" type="radio" id="alkol2" value="2" />Arada bir<br />
    		<input name="alkol" type="radio" id="alkol3" value="3" />Genelde<br /><br />
    			
    <input name="submit" type="submit" value="Sonucu Göster" onClick="kontrol()" />
    </form>
    
    www.20-23.net | Yabancı Müzikte 1 Numara

  2. #2
    "event.returnValue=false" ve "event.returnValue=true" yerine basitçe "return false" ve "return true" kullanırsan sorunun çözülecektir.

  3. #3
    Ek:
    Firefox ve ie karmaşsında ilk madde "event" nesnesidir.Şiddetle buna dikkat etmek gerek. iki browserda farklı kulanılmaktadır.
    Ayrıca bu tarz durumlarda "uyarıları" ve hataları irdelemek için "firebug" kullanmanız hatanın nedenini daha çabuk görmenizi sağlar.

  4. #4
    hasantayyar benim hem kızıp hem de bir önceki mesajımda yaptığım hatayı düzeltmiş: konuyla ilgili bilgi vermiş. Eksik cevabım için özür diliyor, hasantayyar'a teşekkür ediyorum. Doğru yazmış, güzel yazmış

    Not: Kızdığım şey konuyla ilgili bilgi vermeden "şunu yap olur" demek

+ Yanıtla

Bu konu başlığı için etiketler

Mesaj Seçenekleri

  • Yeni başlık açamazsınız
  • Cevap yazabilirsiniz
  • Dosya ekleyemezsiniz
  • Mesajlarınızı değiştiremezsiniz