

AJAX İle Çağırılan Sayfada Javascript Çalıştırma
-
slm müritler
bir asp dosyası düşünün
ben bu dosyanın herhangi bi yerine (asp tagları dışında)
<script type="text/javascript" language="javascript">
BnmFonksiyonum('arguman1');
</script>
yaptığım zaman sayfadaki javascript fonksiyonunu çağrıyor burda sorun yok
ancak aynı işlemi ajax sayfasında yaptığımda javascript'i görmezden geliyo
alert koyuyorum onu da yapmıyo
kısacası ajax ile çağrılan asp sayfasında javascript kodu nasıl çalıştırabilirim? benim çalıştıramama sebebim ne olabilir?
-
Bu arada bahsettiğim sayfada
herhangi bi objenin eventine yazarsam o kodu çalışıyo
mesela <font onclick="BnmFonksiyon()">tikla</font>
kodu sorunsuz çalışıyo
ama event içine yazmadan direk kod bloğunda yazdığımda çalışmıyo
Peki bu ajax sayfasında herhangi bi event'i nasıl çağırabilirim
-
Ajax ile çağırılan sayfada JS çalışmaz..
ajax'ı çağırdığın sayfaya JS kodunu koyacaksın, ajax ile gelen sayfada ise <font onclick="BnmFonksiyon()">tikla</font> bu kodn olursa sorunsuz çalışır. -
evet onda bi problem yok da mesela şunu diyeyim
ajax ile çağırdğım sayfada inbox'ı kontrol ediyorum yeni mesaj varsa ana asp sayfamdaki bi fonksiyonu çağırmak istiyorum
işte problem burda başlıyo
o anasayfadaki js fonksiyonunu ajax sayfasından nasıl çağıracam?
herhangi bi eventle yapmak istemiyorum çünkü bu fonksiiyionunn herhangi bi event çalışmadan otomatik çağırılması gerekiyo
o yuzden
<script>
..... cagir fonk
</script>
yapmam gerekio ama bu da çalışmıyo
Ama bi çözüm buldum gibi
ajax sayfası yuklendiğinde eğer inboxta okunmamış bi mesaj varsa mesela bi inputun valuesunu 5 yapacam
kullandığım ajax.js dosyasında da document.innerhtml yani içerik yuklendikten sonra
o inputun valuesına bakacam eğer 5 ise fonk çağıracam. şu an aklıma gelen en iyi çözüm bu
yeni çözüm yollarına açığım:)
-
O zaman ajax yapmana gerek yok.
Js ile Ajax'ı bir arada kullanabilirsin. Daha önce yazdığım kodlardan bir örnek aşağıdadır.
Not: ajax2 yerine kendi ajax kontrolünü eklemen yeterli.
Not2: gelen cevabı da innerhtml ile yazdırman yeterli olacaktır.function konuSil(konuID) {
var cevap = "";
var poststr = "aJax/konuSil.asp?konuID=" + konuID;
cevap = ajax2('', 'GET', poststr);
if (cevap == "<!--hata-->") {
alert("Yanlış bir işlem gerçekleştirildi.\n\nKonu silinemedi.");
return false;
}
if (cevap == "<!--hata1-->") {
alert("Bu işlemi yapabilmeniz için üye girişi yapmanız gerekmektedir.");
return false;
}
if (cevap == "<!--hata2-->") {
alert("Bu konuyu silme hakkınız bulunmamaktadır.!");
return false;
}
if (cevap == "<!--silindi-->") {
alert("Bu konu ve içerisinde ki mesajlar başarılı bir şekilde silindi.");
gizle(konuID);
return false;
}
}
-
state change fonksiyonunun (onreadystatechange de belirttiğin) içinde
ajaxnesnesi.readyState==4 şartı ile (ajaxla çağrılan sayfanın yüklendiğini gösterir)
Ordan js kodlarını çalıştırabilirsin.