Merhaba, Ziyaretçi. Lütfen giriş yapın veya üye olun.
Aktivasyon mailiniz gelmediyse buraya tıklayın.
07, 2008, 01:44:48 am
42722 Mesaj 8083 Konu Gönderen: 17918 Üye
Son üye: tlord
Turk-Php.Com Forum  |  Yardım Forumları  |  HTML & JavaScript & XML Forumu  |  javascript select kullanımı yardım ? « önceki sonraki »
Sayfa: [1] Yazdır
Yazan Konu: javascript select kullanımı yardım ?  (Okunma Sayısı 392 defa)
arslanhasan
Yeni Kullanıcılar
*
Offline Offline

Mesaj Sayısı: 7


Üyelik Bilgileri
javascript select kullanımı yardım ?
« : 21, 2007, 09:54:31 am »

arkadaşlar şöyle bir sorunum var ?

ülke adı :
<select name"">
<option value=""></option>
</select>

şehir adı :

<select name"">
<option value=""></option>
</select>

ülke adı seçildiğinde o ülkeye ait alt kısımdaki select'te  şehir adını otomatik olarak nasıl getiirim ? şimdidem teşekkür ederim.
Logged
obareey
PHP Stajyeri
**
Offline Offline

Mesaj Sayısı: 246



Üyelik Bilgileri
Ynt: javascript select kullanımı yardım ?
« Yanıtla #1 : 22, 2007, 05:31:08 am »

şu şekilde bir mantıkla yapabilirsin :

Kod:
<script>
/* Genelde bu kısım AJAX (!?) ile oluşturulur */
var sehirler = new Array("İstanbul","Tekirdağ"); // Şehirlerimizi bir dizide tutuyoruz
sehirler["İstanbul"] = new Array("Bakırköy","Beşiktaş"); // ilçelerimizi de alt dizilerde tutuyoruz
sehirler["Tekirdağ"] = new Array("Çorlu","Çerkezköy");

/* İlk select'imizi oluşturacak fonksiyon */
function Olustur() {
    var sehir = document.getElementById("sehir"); // select nesnemizi alıyoruz
    for ( var i = 0; i < sehirler.length; i++ ) {
        sehir.options.length++; // select nesnemizin içeriğini genişletiyoruz
        sehir.options[i].text = sehirler[i]; // Yazı değerini şehire ...
        sehir.options[i].value = i; // ... value değerini sıraya atıyoruz
    }
    IlceGoster(sehirler[0]); // daha sonra ilk soradaki ilimizin ilçelerini gösteriyoruz.
}

/* Şehir numarasına göre ilçelerimizi listeleyeceğiz */
function IlceGoster(sehirno) {
    var ilce = document.getElemetById("ilce"); // ilce id'li select nesnemizi alıyoruz
    var sehir = sehirler[sehirno]; // hangi şehrin seçilmiş olduğuna bakıyoruz
    ilce.options.length = 0; // select nesnesinin içeriğini boşaltıyoruz
    for ( var i = 0; i < sehirler[sehir].length; i++ ) { // yukarıdaki ile aynı işlemleri yapıyoruz.
        ilce.options.length++;
        ilce.options[i].text = sehirler[sehir][i];
        ilce.options[i].value = i;
    }
}

</script>
<!-- Sayfa yüklendiğinde şehir isimlerini de yüklüyoruz -->
<body onload = "Olustur()">
    <!-- seçim yapıldığında ilçe isimlerini yeniden yüklüyoruz -->
    <select id="sehir" onchange="IlceGoster(this.selectedIndex)"></select>
    <select id="ilce"></select>
</body>

Bu şekilde genel ve basit iki fonksiyonla işini halledebilirsin. ancak yukarıda da belirttiğim gibi genelde şehir seçildiğinde o şehirdeki bilgiler AJAX denilen teknik sayesinde başka bir sunucu taraflı dilde ( ör.: php ) yazılmış dosyadan veritabanını sorgulayarak ilçe isimlerini yine dizi olarak döndürür. ancak böyle olsa bile yapılacak işlem yine yukarıdakiyle aynıdır. kolay gelsin. iyi çalışmalar...
Logged
Sayfa: [1] Yazdır 
« önceki sonraki »
Gitmek istediğiniz yer:  


Turk-Php.Com Forum | SMF Forum Software © 2005, Simple Machines LLC. All Rights Reserved.