ABA


"Async AJAX - בקלות עם כמה קבצי עזר שהכנתי - תהנו"
גירסת הדפסה        
קבוצות דיון בניית אתרים נושא #11882 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 11882
bmaorlo 
חבר מתאריך 13.4.03
4770 הודעות
   19:12   11.04.07   
אל הפורום  
  Async AJAX - בקלות עם כמה קבצי עזר שהכנתי - תהנו  
 
   עבר עריכה לאחרונה בתאריך 13.04.07 בשעה 01:15 על-ידי akoka (מפקח)
 
אוקי אז כולם יודעים מה זה AJAX , הכנתי לכם כלי שיעזור לכם להשתמש בו .
זה ממש פשוט , תסתכלו על הדוגמא ותבינו .
פונקציה אחת שעושה את הקריאה הAJAXית ומחזירה את התשובה לפונקציה שגם את הפונקציה הזאת שולחים לפונקציה שעושה את הAJAX.
אם לא תבינו את הדוגמא תשאלו .

זה הקובץ הראשי :
http://rotter.name/User_files/nor/461d08336af43c7b.txt
הקוד של הקובץ הראשי


<html>
<head>
<script>
//----------------------------create the xml http object
function get_http_request_obj(){
var l_xmlDoc = new ActiveXObject("Msxml2.XMLHTTP");
return l_xmlDoc
}
//---------------------------generic function the create the request and redirect the answer to the givven function
function make_request(postTo,callBackFunc){
var xmlDocRes = get_http_request_obj();
xmlDocRes.onreadystatechange = function() {
if (xmlDocRes.readyState == 4)
if (xmlDocRes.status == 200) {
eval(callBackFunc); // call to the givven function
} else {
alert('There was a problem with the request,Please try again later.');
}
}
xmlDocRes.open('GET', postTo, true);
xmlDocRes.send(null);
}
//--------------------when call_ajax_1 finish , make_request redirect to this funcion
function ajax_1_return(str){
document.getElementById("text1").value=str;
}
//---------------------when call_ajax_2 finish , make_request redirect to this funcion
function ajax_2_return(str){
document.getElementById("text2").value=str;
}
//--------------set up the rapper and call to the ajax make_request function that make the ajax request
function call_ajax_1(){
urlTo='http://rotter.name/User_files/nor/461d05575d4dcaf9.txt';
make_request(urlTo,"ajax_1_return(xmlDocRes.responsetext);")
}
//----------------set up the rapper and call to the ajax make_request function that make the ajax request
function call_ajax_2(){
urlTo='http://rotter.name/User_files/nor/461d057b5df1a6ae.txt';
make_request(urlTo,"ajax_2_return(xmlDocRes.responsetext);")
}
</script>
</head>
<body>
<input type="button" value="ajax1" onclick="call_ajax_1();"><input type="text" id="text1">
<input type="button" value="ajax2" onclick="call_ajax_2();"><input type="text" id="text2">
</body>
</html>


הקובץ הראשי קורא ל2 הקבצים הבאים

http://rotter.name/User_files/nor/461d05575d4dcaf9.txt

http://rotter.name/User_files/nor/461d057b5df1a6ae.txt

עכשיו תחשבו שאת הפונקציות get_http_request_obj
make_request
אתם סוגרים בקובץ אחר , וזהו יש לכם מודול מוכן שמטפל בAJAX אסיכרוני.
תהנו.
פונקצית תאימות לדפדפנים


<script type="text/javascript">
function ajaxengine()
{
var xhr;
try
{
xhr=new XMLHttpRequest();
}
catch (e)
{
try
{
xhr=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
xhr=new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e)
{
return false;
}
}
}
}
</script>


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  שים לב שמה שפרסמת תומך רק ב-IE... לא דאגת לתאימות ;) Ice Cold  11.04.07 19:18 1
     כן כן , ידוע. bmaorlo  11.04.07 19:18 2
         פשוט תיצור פונקציה עם כמה ifים שתעשה return לאובייקט akoka 11.04.07 21:10 3
             מי הסתבך bmaorlo  11.04.07 23:02 4
                 התכוונתי שתוסיף את זה:)מאור לא צריך להתרגז נשמה חח akoka 11.04.07 23:04 5
                     חס וחלילה אחי לא התרגזתי bmaorlo  12.04.07 09:21 6
                         הכנתי לכם חח רק עכשיו שמתי לב שהגבת לי:) akoka 13.04.07 01:12 7

       
Ice Cold  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 3.8.02
28041 הודעות, 19 פידבק
   19:18   11.04.07   
אל הפורום  
  1. שים לב שמה שפרסמת תומך רק ב-IE... לא דאגת לתאימות ;)  
בתגובה להודעה מספר 0
 


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
bmaorlo 
חבר מתאריך 13.4.03
4770 הודעות
   19:18   11.04.07   
אל הפורום  
  2. כן כן , ידוע.  
בתגובה להודעה מספר 1
 
   ערכתי לאחרונה בתאריך 11.04.07 בשעה 19:26 בברכה, bmaorlo
 
בשביל FF צריך לבדוק איזה דפדפן ואז להחליף את שורה 6 בשורה הבאה

var l_xmlDoc = new XMLHttpRequest();

הבאתי רק דוגמא ובסיס לפונקציות בסיסיות לAJAX
מכאן ואיך שתפתחו את זה , זה לשיקולכם.
אשמח לראות .


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   21:10   11.04.07   
אל הפורום  
  3. פשוט תיצור פונקציה עם כמה ifים שתעשה return לאובייקט  
בתגובה להודעה מספר 2
 
   לא צריך להסתבך עם try וcatch תודה בכול אופן


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
bmaorlo 
חבר מתאריך 13.4.03
4770 הודעות
   23:02   11.04.07   
אל הפורום  
  4. מי הסתבך  
בתגובה להודעה מספר 3
 
   איפה ראית אותי אומר
catch and try ?


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   23:04   11.04.07   
אל הפורום  
  5. התכוונתי שתוסיף את זה:)מאור לא צריך להתרגז נשמה חח  
בתגובה להודעה מספר 4
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
bmaorlo 
חבר מתאריך 13.4.03
4770 הודעות
   09:21   12.04.07   
אל הפורום  
  6. חס וחלילה אחי לא התרגזתי  
בתגובה להודעה מספר 5
 
   רק עניין אותי לדעת איפה כתבתי את זה.
איפה שאני עובד לא מעניין אותם FF ומה שנתתי כאן זה קריעה של סקריפט יותר גדול שכתבתי לעבודה.
זה אחלה שיטה לעבוד , תוסיף את הטיפול בFF ותביא לנו לכאן.
תודה.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   01:12   13.04.07   
אל הפורום  
  7. הכנתי לכם חח רק עכשיו שמתי לב שהגבת לי:)  
בתגובה להודעה מספר 6
 
   ערכתי לאחרונה בתאריך 13.04.07 בשעה 01:13 בברכה, akoka
 

<script type="text/javascript">
function ajaxengine()
{
var xhr;
try
{
xhr=new XMLHttpRequest();
}
catch (e)
{
try
{
xhr=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
xhr=new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e)
{
return false;
}
}
}
}
</script>

אין הרבה מה להסתבך פונקציה שמותאמת לכול הדפדפנים עם try וcatch לקחתי את זה ממערכת שלי :/


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net