![]() |
# 1 |
חבר בקהילה
|
רענון דיב עם AJAX כל חצי דקה
שלום,
לאחר חיפושים רבים בגוגל עם מילות המפתח :"refresh ajax div" ו "ajax refresh time" וכו'. לא מצאתי את מה שחיפשתי... ולכן אני פותח כאן את האשכול הנ"ל. אז, יש ברשותי DIV שמתרענן כל 3 דק' לבד, אבל בכדי לראות את הרענון - אתה צריך ללחוץ F5 (רענן). אני מעוניין לעשות כך שלא אצטרך ללחוץ F5 על מנת לרענן, כלומר, כל חצי דקה יהיה רענון אוטומתי אך ורק לDIV הזה בעזרת AJAX. במידה ויש שינוי - ישתנה. במידה ואין שינוי - אין שינוי. אבל כל חצי דקה יהיה רענון של AJAX. הנה ה-DIV שלי שאני רוצה שיתרענן כל חצי דקה: קוד:
<div id="loadPeriodical" class="box periodical"><table border="0" dir="ltr" align="center" width="95%" cellspacing="0" cellpadding="4"> <tr bgcolor="#0D0D0D"> <td colspan="2" nowrap align="left"> <p><font face="Arial, Helvetica, sans-serif" size="1" color="#FFFFFF"><b>Now:</b></font> </td> <td nowrap align="Right"> <p><font face="Arial, Helvetica, sans-serif" size="1" color="#FFFFFF"><b>Time</b></font> </td> </tr> <? $rc=0; PutSongRow($song); $mainsong = $song; ?> <? if(count($queue)>0){?> <tr bgcolor="#666666"><td colspan="7" dir="rtl"> <center><b><font size="2" color="#000000">???:</font></b> <font size="2" color="003366"><b> <? $i=0; while(list($key, $song) = each($queue)) { if(empty($song["artist"])) $song["artist"] = 'Unknown'; if($i>0) echo ", "; echo $song["artist"]; if($song["requestid"]!=0) { echo " ~בקשה~"; } $i++; } ?> </b></font></center></td></tr> <?}?> <tr bgcolor="#0D0D0D"> <td colspan="7" nowrap> <p align="left"><font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#FFFFFF">Recently played songs:</font> </td> </tr> <? $rc=0; while(list($key, $song) = each($history)) PutSongRow($song); ?> </table><br></div> </div></div> ניסיתי גם להכניס את הקוד הזה לפני ה-DIV אך עדיין לא עובד: קוד:
<script type="text/javascript"> function Ajax(){ var xmlHttp; try{ xmlHttp=new XMLHttpRequest(); // Firefox, Opera 8.0+, Safari } catch (e){ try{ xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); // Internet Explorer } catch (e){ try{ xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } catch (e){ alert("No AJAX!?"); return false; } } } xmlHttp.onreadystatechange=function(){ if(xmlHttp.readyState==4){ document.getElementByID('loadPeriodical').innerHTML=xmlHttp.responseText; setTimeout('Ajax()',4000); } } window.onload=function(){ setTimeout('Ajax()',4000); } </script> תודה מראש, Last edited by 106FM; 10-10-09 at 04:14.. |
![]() |
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|