Kod Mozillada Çalışmıyor

  • Konbuyu başlatan Konbuyu başlatan wertyu6
  • Başlangıç tarihi Başlangıç tarihi
Kodla Büyü

wertyu6

Süper Üye
Süper Üye
Mesajlar
1,794
Arkadaşlar şu kod ie de sorunsuz çalışıyor ama mozillada birtürlü çalıştıramadım. Yardımcı olursanız sevinirim.


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<script language="JavaScript">
function getir()
{
deger=menu.options[menu.selectedIndex].value;
switch (deger)
{
case "2" : metinkutusu.value="çarsamba"; break;
case "3" : metinkutusu.value="perşembe"; break;
case "4" : metinkutusu.value="cuma"; break;
default : metinkutusu.value="Listeden ögretmen seçiniz.";
}


}
</script>
</head>
<body>
<select id="menu" onchange="javascript:getir()">
<option id="secenekadi" value="1">Seçiminizi Yapiniz</option>
<option id="secenekadi" value="2">(Matematik)</option>
<option id="secenekadi" value="3">(Fen ve Teknoloji)</option>
<option id="secenekadi" value="4">(Türkçe)</option>
</select>

<textarea name="metinkutusu" cols="20" rows="20"></textarea>
</body>
</html>
 
function getir(obj)
{
deger=obj.options[menu.selectedIndex].value;



<select id="menu" onchange="javascript:getir(this)">


yukardakiler bir fikir verirmi acaba
yada DOM nesnesini direk göster . form kullanırsan eğer

deger=document.form1.options[menu.selectedIndex].value; // bilmiyorum form1 nasıl yazılıyor form[1] de olaiblir

yada

var obj=document.getelementByName('menu')
deger=obj.options[menu.selectedIndex].value;

bunları denemedim ama aklıma gelen hata şu
menu dediğin ne olduğunu firefox un script yorumlayıcısı bilmiyor
 
alpaygunes' Alıntı:
function getir(obj)
{
deger=obj.options[menu.selectedIndex].value;



<select id="menu" onchange="javascript:getir(this)">


yukardakiler bir fikir verirmi acaba
yada DOM nesnesini direk göster . form kullanırsan eğer

deger=document.form1.options[menu.selectedIndex].value; // bilmiyorum form1 nasıl yazılıyor form[1] de olaiblir

yada

var obj=document.getelementByName('menu')
deger=obj.options[menu.selectedIndex].value;

bunları denemedim ama aklıma gelen hata şu
menu dediğin ne olduğunu firefox un script yorumlayıcısı bilmiyor

Yok hocam bu da işe yaramadı.
 
hocam mozillada geçmişi bir temizle ondan sonra dene
bende böle bir kod çalışmam durumunu bu şekilde hallettim
 
Kod:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<script language="JavaScript">
function getir()
{
deger=document.getElementById("menu").value;
switch (deger)
{
case "2" : document.getElementById("dene").innerHTML="çarsamba"; break;
case "3" : document.getElementById("dene").innerHTML="perşembe"; break;
case "4" : document.getElementById("dene").innerHTML="cuma"; break;
default : document.getElementById("dene").innerHTML="Listeden ögretmen seçiniz";

}
}
</script>
</head>
<body>
<select id="menu" onchange="getir()">
<option id="secenekadi" value="1">Seçiminizi Yapiniz</option>
<option id="secenekadi" value="2">(Matematik)</option>
<option id="secenekadi" value="3">(Fen ve Teknoloji)</option>
<option id="secenekadi" value="4">(Türkçe)</option>
</select>

<textarea name="metinkutusu" id="dene" cols="20" rows="20"></textarea>
</body>
</html>
 
w3schools sağlam bi siteye benziyor paylaşım için tşkrler.
kısaca benim kodun çalışmama sebebini açıklayabilirmisiniz?
 
yazdıklarım kesin bir bilgi olmamakla beraber senin yazdığın kodun w3 standartlarında olmamasından kaynaklanabilir. benim araştırmalarımda sayfa içindeki elementlere erişmek için
document.getElementById(id)=id ile odaklanma
document.getElementsByName(name)=nesneni adı ile odaklanma
document.getElementsByTagName(h1)=tag ismiyle odaklanma burada yapacağın işlem bütün h1 lere etki edecektir.
document.getElementsByTagName(h1)[1]=ikinci sıradaki h1 tagına odaklanır.
document.getElementById(id).innerHtml = id girilen elementin içeriğini değiştirmek için kullanılır.

w3schools sitesi Fatih Hayrioğlu'nun Css Giriş kitabındaki baş kaynaktır. Ayrıca Musa Çavuş'da bu siteyi kaynak olarak göstermiş ayrıntılar için bu siteye yönlendirmiştir.
 
Hocam, yazılanlarda hada ve eksik var. Yanlış öğrenilmesin diye düzeltmeler yapmak lazım.

Örnekteki hata, FireFox'un IE gibi ID.Ozellik şeklinde bir erişime izin vermemesidir. document.getElementById, nesnelerin / etiketlerin referanslarını elde etmek için kullanılır ve standarttır. Tüm tarayıcılarda çalışır.

document.getElementById("ElementinIDOzelligiDegeri") -> Etiketin referansını verir.

Örnek :
Kod:
var m = document.getElementById("menu"); // ID özelliği değeri menu olan etiketin referansını döndürür ve m isimli değişkene atar.
alert(m.options[m.selectedIndex].value); // Referans değişkenini kullanarak etiketin özellik, metod ve olaylarına erişebiliriz.


document.getElementsByName("ElementlerinNameOzelligiDegeri") -> name özelliğinin değeri verilen değer olan tüm etiketlerin NodeList türünden koleksiyonunu verir. Bir dizi gibi bu koleksiyonun elemanlarına ulaşırsınız. Çoğul olduğuna dikkat edin. input type="radio" kullanımında olduğu gibi birden fazla etiketin name özelliğinin değeri aynı olabilir. Üstteki mesajda bir etiket verir gibi anlaşılıyor. Bir etiketten fazlasını verebilir ve bir etiket bile verse indis verilerek etiketlerin referanslarına ulaşılır. Örneğin;

Kod:
var elementler = document.getElementsByName("menu");
if (elementler.length) elementler[0].value = "abc";

document.getElementsByTagName("etiketAdi") -> Adı verilen (Örneğin IMG) etiket türünün tüm örneklerinin bir listesini NodeList türünden döndürür. H1 etiketi adını kullanırsan değişiklikler tüm H1 etiketlerini etkiler yazılmış yukarıda. Yine üstteki gibi bir liste döndürdüğünden elemanlarına tek tek ulaşmamız ve hepsini değiştirmek istiyorsak, tek tek elemanların hepsini değiştirmemiz gerekir. İfade yanlış ama alttaki örnek h1 etiketinin sağında ve solunda çift tırnak olmaması dışında doğru.

Javascript ile ilgilenen çok fazla değil. Herkes sağdan soldan hazır birşeyler arıyor. Bu işle yeni yeni de olsa uğraşanların olması çok güzel.

İyi çalışmalar.
 
BBNET
Geri
Üst