Mesela, veritabanındaki veriler
il: İstanbul
ilçe: Kadıköy
diyelim. Update sayfasında bu il ve ilçe seçili geliyor. Eğer ben il kısmını diyelim ki "Ankara" yaptım ve tekrar "İstanbul" yaptım. İlçe kısmı o zaman geliyor. Hâlbuki il kısmı "İstanbul", ilçe kısmı "Kadıköy" seçili iken ilçe option'ına tıkladığımda diğer ilçelerin de görünmesi lazım. Ama sadece, veritabanındaki veri gözüküyor. Kodlar aşağıda.
<select name="il" id="il" onChange="set_child_listbox('il', 'ilce',ilceler,1,0);" required="required" >
<option value="">Kategori Seç</option>
<Option Value="İstanbul"
<?php
if($vericek['yenieklenenler_il'] === "İstanbul") {
echo 'selected="selected"';
}
?>
>İstanbul
</Option>
<Option Value="Ankara">Ankara</Option>
</select><select name="ilce" id="ilce" required="required" class="validate[required]">
<option value=""></option>
</select>function findObj(n, d) { //v4.01
var p,i,x;
if(!d) d = document;
if((p = n.indexOf("?"))>0&&parent.frames.length) {
d = parent.frames[n.substring(p+1)].document;
n = n.substring(0,p);
}
if(!(x = d[n])&&d.all) x = d.all[n];
for (i = 0; !x&&i<d.forms.length;i++) x = d.forms[i][n];
for (i = 0; !x&&d.layers&&i<d.layers.length;i++) x = MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x = d.getElementById(n);
return x;
}
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}
var ilceler = new Array(new Array('İstanbul','Eminönü'),
new Array('İstanbul','Bakırköy'),
new Array('İstanbul','Kadıköy'),
new Array('İstanbul','Maltepe'),
new Array('İstanbul','Karaköy'));
var semtler = new Array();
function set_child_listbox(sSource,sTarget,childArray,sifirla,tip) {
//önce temizlik ;)
var parentObject = findObj(sSource);
var childObject = findObj(sTarget);
var base=0;
if(sifirla==1)
{
base=-1;
}else
{
base=0;
}
for(var i=childObject.length;i>base;i--) {
childObject.options[i] = null;
}
//childObject.options[0] = new Option("Seçiniz","");
//var selIndex = parentObject.options[parentObject.selectedIndex].value;
var selIndex = parentObject.value;
if (selIndex == "") {
//childObject.disabled = true;
} else {
childObject.disabled = false;
var childIndex = base+1;
for (i = 0; i < childArray.length; i++) {
if (childArray[i][0+tip] == selIndex) {
childObject.options[childIndex+1] = new Option(childArray[i][1+tip], childArray[i][1+tip]);
childIndex++;
}
}
}
childObject.selectedIndex = 0;
if(document.getElementById('nvar_alan_1').value == 'Türkiye' || document.getElementById('nvar_alan_1').value == ''){childObject.focus();}else{document.getElementById('ilce').style.display='none';document.getElementById('nvar_alan_4').style.display='block';document.getElementById('nvar_alan_5').style.display='block';}
}