استفاده از onload در Ajax
با سلام به همه،
من کلی توی اینترنت رو گشتم(5 ساعت ) ولی به این سوالم نرسیدم که:
یک وبسایت دارم از آژاکس توش استفاده کردم وقتی که یک قسمت رو توی صفحه 1 کلیک می کنم تا صفحه2 مربوطه به صورت آژاکس توی یک دایو اصلی صفحه 1 باز بشه درست کار می کنه.تا اینجا مشکلی ندارم.مشکل اینجاست که زمانی که توی رویداد صفحه 2 قسمت body میام onload رو اضافه می کنم تا مثلا بعد از لود شدن در دایو صفحه 1 یک آلرت نمایش بده هیچ اتفاقی نمی افته؟؟؟!!
صفحه 2
کد: <body onload="javascript:alert('f')">
نقل قول: استفاده از onload در آژاکس
وقتی دارین با ajax چیزی رو لود میکنین اون رو به عنوان یه صفحه نمیبینه تا event ای بخواد اجرا بشه ...
3 راه دارین ...
1 - اگه حتما میخواین که یه صفحه کامل رو لود کنین از iframe استفاده کنین ....
2 - اگه فقط یه سری کد html رو میخواین لود کنین ajax خودش متد callback داره که بعد از لود شدن کامل content مورد نظرتون اجرا میشه .... این متد میتونه هم تو صفحه 1 باشه و هم تو صفحه 2 ...
3 - و یا اینکه کد اسکریپت مورد نظرتون رو در آخر صفحه 2 قرار بدین ئر این صورت وقتی که browser به این کد رسید اجراش میکنه ... البته این بستگی داره که چجوری دارین از ajax استفاده میکنین ... چون در بعضی مواقع اسکریپت ها disable میشن ...
نقل قول: استفاده از onload در آژاکس
با تشکر از جوابتون
میتونید یک سمپل بسازید و اینجا قرار دهید ؟
با سپاس
نقل قول: استفاده از onload در آژاکس
نقل قول: استفاده از onload در آژاکس
اگر برای هر دو حالب بسازید ممنون میشم.
میدونم شاید سخت باشه اما خوب خیلی از ماها ساید همچین چیزی رو بخوایم. (اجرت با آقا امام حسین ع :خجالت:)
نقل قول: استفاده از onload در آژاکس
1 -
<a href="#" onclick="setData('test.html')">content</a>
<iframe id="myFrame"></iframe>
function setData(page) {
$('#myFrame').src = page;
}
2 - در این حالات کدی که دریافت میکنین از سرور نباید شامل تگهای html , head باشه و از body هم فقط باید داخلش باشه و نه خودش ...
<a href="#" onclick="getData('link1')">Link 1</a>
function getData(linkID) {
$.ajax({
type: "POST",
url: "test.aspx", //ya test.php fargi nemikone
data: "link=" + linkID + "&do=getdata",
success: function (data) { // function callback bad tamum shodan daryaft dade az server ejra mishe
$('#divcontent').html(data);
alert('Data Recived !')
}
});
}
3 - کدی که از سمت سرور میگیرین ...
<div>
//code html bedune taghaye head va html va body
</div>
<script type="text/javascript" language="javascript">
//codei ke mikhayn bad load shodan anjam beshe ... be surate azad na ye function
</script>