Re: [Linux-programlama] Re: Cross Select Box Kodörneği

---------

New Message Reply About this list Date view Thread view Subject view Author view Attachment view

From: Serdar KÖYLÜ (serdarkoylu@fisek.com.tr)
Date: Thu 30 Dec 2004 - 09:04:51 EET


Selamlar..

Böyle durumlarda, en iyi çözüm, sayfayı load/upload etmeden sadece
ilgili elemanı (bir DIV, bir COMBO, bir HEDE..) refresh etmek olacaktır.
En kolay yolu, IFRAME kullanılarak yapılandır:

function reloadCombo(hedeler) {
   hede = hedeler.split("\n");
   // vs gereken diger parse islemi yapilir.
   combo.additem(hedeler[x], hodo);
}

function combo_change() {
   a = document.getElementById("fesmekan");
   a.src = "yeni_degerleri_alacak_script.php&deger=" + combo_value;
}

<iframe style=invisible id=fesmekan></iframe>

yeni_degerleri_alacak_script.php dosyası ise soyle bir sey verir:
<html><head></head><body
onload="top.reloadCombo(document.getElementById(box));">
<textarea id=box>0:Ali
1:Veli
2:Hasan
</textarea></body>

Elbet, bu karalama kodlardaki eksikler duzeltilmeli vs. Bu calistirmak
icin degil, izlenecek yontemi anlatan bir ornek. Bir fonksiyon
tanimliyoruz. Bu fonksiyon aldigi bir degerle comboyu dolduruyor. Burada
belki, combo'yu (yada neyse) bir DIV'e koyup, komple DIV kodunu
innerHTML yoluyla degistirmek daha kestirme olabilir. Asil combo
degisince combo_change'i tetikliyor. Bu kodda iframe'i yeniden yukluyor.
Artik style="visibility: hidden" mi olur, css ile mi olur, bu iframe'i
gozlerden sakliyoruz. iframe'e yuklenen kod, bizim sayfamizdaki
reloadCombo gibi bir fonksiyona callBack yapiyor. Boylece, sadece
degismesi gereken yeri degistiriyor.

Calisabilir bir kod soyle orneklenebilir:

index.html:

<html><head>
<META content="text/html; charset=iso8859-9" http-equiv='Content-Type'>
<script>
function setmain(url) {
        buf = document.getElementById('buffer');
        buf.src = urlRoot + url;
}
function callback(obj) {
        
        document.getElementById('main').innerHTML = obj.value;
}
function firstLoad() {
    document.getElementById('buffer').src = 'undercon.html';
}
</script>
</head>
<body onload='firstLoad();'>
<div id='container' style='position: absolute; width: 745px; height:
23px' ><script>Build('container', 740);</script></div>
<iframe id='buffer' style='z-index: 999; visibility: hidden; position:
absolute; top=-1000px;'></iframe><textarea rows='30' cols='100' id='TA'
style='z-index: 991; visibility: hidden;'></textarea></body></html>

undercon.html:

<html><head>
<meta http-equiv='cache-control: no-cache'/>
<title></title>
</head>
<body onload='top.callback(document.getElementById("data"));'>
<textarea id='data'>
<font size='30px' color='RED'>Under Construction</font>
<font size='15px' color='blue'>Bu hizmetimiz henüz hazırlama
safhasındadır.</font></p>
<div width='100%' align='center'><img
src='http://www.image.hedesi.com/under-con.gif'></div>

Sanırım bu çözm sizin aradığınıza daha yakın. Yada en azından bana öyle
geliyor. Geç yatılan bir sabahın erken saatleri HTML düşünmek için hiç
uygun vakit değil netekim..

Saygi ve sevgiler..

> Evet haklısınız ancak tam istediğim çözüm değil oradki.. Gene de çok
> teşekkürler

_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama


New Message Reply About this list Date view Thread view Subject view Author view Attachment view

---------

Bu arsiv hypermail 2.1.2 tarafindan uretilmistir.