Bu işlemi yaparken açılacak pencerenin head tagları arasına :
<base target="_self"> ilave etmeyi unutmayınız. IE için şarttır.
Yapılacak iş :1 nci sayfadaki açılır kutuya firma id ve firma adını diğer pencereden getireceğiz.
1 NCİ SAYFA :Sayfamızda olması gereken kod:
function sayfacverigetir(URL,acilirkutuad) {
var acilirkututani= document.all[acilirkutuad];
var degerA = acilirkututani.options[0].value;
var degerB = acilirkututani.options[0].text;
var MyArgs = new Array(degerA , degerB);
var WinSettings = "dialogWidth:610px;dialogHeight:408px;scroll:yes;status:no;help:no;edge:sunken;resizable:1;"
var MyArgs = window.showModalDialog(
URL, MyArgs, WinSettings);
if (MyArgs == null)
{
//window.alert("Herhangi bir işlem yapılmadı. İstek boş döndürüldü.")
}
else
{
acilirkututani.options[0].value=MyArgs[0].toString();
acilirkututani.options[0].text=MyArgs[1].toString();
}
}
açılacak pencere için kod:
Açılır kutumuz :<select name="acilirkutu" size="1" class="icerik">
<option vlue="0" selected>Seçiniz</option>
Yanındaki buton :Bu butona tıklayarak pencere açılacak.
<input type="button" name="butonad" value=" :: " onClick="sayfacverigetir('açılacak sayfanın url adresi','acilirkutu')" style="cursor:pointer" title="Üye Seçiniz"/>
İKİNCİ SAYFA :Şimdi de açılan penceredeki kodlarımıza bakalım:Diyelim firmalar listeli bizde liste satırına şu linki koyalım :
<a href="javascript:;" onClick="secilenigonder('<?=$row["id"]?>','<?=$row["calis_firma"]?>');">aktar</a>
Sayfanın altına koyduğumuz :
Javascript kodumuz:
function secilenigonder(id,name){
if (id == ""){
return;}
var degerA= id;
var degerB = name;
var MyArgs = new Array(degerA, degerB);
window.returnValue = MyArgs;
window.close();
}
Şimdi gelelim en önemli meseleye ; bu kod Firefox ta ve IE-7 de yapılan denemede çalıştı.
Ancak IE-7 de şöyle bir sorun meydana geldi.
açılan pencerede bir form uygulamasında mesela şu isimli firmayı bul dediniz, sonuç hüsran çünkü yeni bir pencere açtı.
İşte bu sorunun olmaması için
head tagları arasına :
<base target="_self">
ilave ettik ve sorunumuz çözüldü.