אז AJAX AJAX ו-AJAX, זה מה שאנחנו עושים באופן נרחב בימים אלה. זה חוסך זמן, מוסיף דינמיקה ונותן לך תחושה של שימוש בתוכנה מסוג יישום של תחושה. יש עוד דרכים רבות להשתמש AJAX עם ספריות רבות. אבל כפי שאתה יכול לראות באתר הזה הוא בשביל jQuery, אנחנו מסתכל על כמה שימושים מתקדמים AJAX בסיסיים או אולי.
מה אתה צריך אותנו?
ספריית jQuery (כמובן)
סקריפט PHP קטן
בואו התחלנו לדבר. בjQuery, יש בעצם 6 סוגים של שיטה לעשות פעולות AJAX. אלה הם
- $. AJAX (אפשרויות)
- $. לקבל (כתובת אתר, נתונים, קריאה חוזרת)
- $. GetJSON (URL, נתונים, קריאה חוזרת)
- $. GetScript (URL, קריאה חוזרת)
- עומס (URL, נתונים, הקריאה החוזרת)
- $. הודעה (כתובת אתר, נתונים, קריאה חוזרת,
מלבד מספר 1, כל השיטות האחרות להשתמש $. AJAX באופן פנימי. אז זה אומר $. AJAX () הוא פונקצית האמא שלנו לפעולות jQuery AJAX. בואו נסתכל על איך $. AJAX () נראה כמו
msg ) ; } } ) ; תגובה "+ MSG);}}); |
זה די בו. סוג הפרמטר לוקח "לקבל" או "פוסט" שאומר שאתה יכול לשלוח requestion AJAX כPOST או GET (אני מעדיף תמיד POST). שאר הפרמטרים הם די מסביר עצמי אם תסתכל על הקוד שוב.
עכשיו אנחנו הולכים לעשות את תסריט AJAX קטן שקורא את הקישור של תגי קישור (<a>) וטוען את הבקשה על כמה אלמנטי div במסמך.
ראשית אנחנו לוקחים HTML רגיל של מסמך PHP שייראה כך
<DOCTYPE HTML PUBLIC! "- / / W3C / / DTD XHTML 1.0 Strict / / EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<head>
בדיקת קישור אייאקס <title> </ a>
<meta http-equiv="Content-type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript" src="jquery-1.2.6.min.js"> </ script>
</ ראש>
<body>
</ Body> </ html> |
עכשיו בואו נוסיף כמה קישורים למסמך. לסוג תפריט טוב יותר של מראה אנו נשתמש UL> LI וקישור. שייראה כך
<ul id="nav">
<li> <a class="ajax_link" rel="div1" href="response.php?user=john"> טען ב1 דיב </ a> </ p>
<li> <a class="ajax_link" rel="div2" href="response.php?user=nash"> טען בדיב 2 </ a> </ p>
<li> <a class="ajax_link" rel="div3" href="response.php?user=stella"> טען בדיב 3 </ a> </ p>
<li> <a class="ajax_link" rel="div4" href="response.php?user=jason"> טען בדיב 4 </ a> </ p>
</ Ul> |
כפי שניתן לראות יש לנו לשים קישורים באלמנטים רשימה בתוך אובייקט רשימה לא מסודרת. קח מבט מקרוב על המאפיינים של תג <a>. יש לנו href, כיתה וrel תכונה שנראית דבר שונה מאשר קישור רגיל. אם אתה רואה, יש לנו נתון תכונה rel לכמה שמות div כלומר div1, div2 .. כן הלאה. זה אומר שאנחנו רוצים את התגובה של href להיות טעונים לתוך divs אלה. איך לעשות את זה? בואו נוסיף divs האלה ראשון
<span> DIV -1 </ a>
<div id="div1" class="content_loader"> </ p>
<span> DIV -2 </ a>
<div id="div2" class="content_loader"> </ p>
<span> DIV -3 </ a>
<div id="div3" class="content_loader"> </ p>
<span> DIV -4 </ a>
<div id="div4" class="content_loader"> </ p> |
והחלק האמיתי עכשיו - יש לנו לתת את הקישורים בכיתה "ajax_link". אנחנו רק נוסיף דינמי פעולות ajax רק קישורים שיש שם מחלקה שנקראת "ajax_link". לעזאזל, לא את כל הקישורים מעמוד שיש לנו פעולות AJAX, נכון?
אז, על עומס מסמך היינו לעשות את זה.
. ready ( function ( ) { $ (מסמך). מוכנים (פונקציה () {
) . click ( function ( ) { $ ("A.ajax_link"). לחץ (פונקציה () {
this ) ; $ Current_link = $ (זה);
$. AJAX ({
, סוג: "הודעה",
( "href" ) , כתובת אתר:. $ current_link attr ("href"),
( e ) { הצלחה: פונקציה (ה) {
+ $current_link. attr ( "rel" ) ) . html ( e ) ; . $ (. "#" + $ Current_link attr ("rel")) html (ה);
}
});
; בתמורת שווא;
});
}); |
תן לי להסביר את התסריט קצת. אירוע document.ready הוא אירוע אשר מופעל בטעינה של דף. ואז אנחנו הקצאה כלשהי של קודים באירוע לחיצה על הקישורים שיש להם מעמד "ajax_link". עושים את זה $ current_link = $ (זה); מאפשר לי להיות אובייקט הקישור הנוכחי זמין בתוך הפונקציה של קריאה חוזרת. ויש לנו
$ ("#" + $ Current_link.attr ("rel")). Html (ה)
מה שאומר $ ("div_id") HTML (server_response) ויש לנו להגדיר את פרמטר URL של פונקצית $ AJAX דינמי עם כתובת אתר:.. current_link.attr $ ("href"). אז עכשיו כל האמצעים האלה, "כל אלה שיש להם הקישורים בכיתה" ajax_link "- הוספת מטפל אירוע לחץ - ולאחר מכן לבצע בקשת AJAX לוקחת את קישורי href poperty ולטעון את התגובה לdiv id שתואם את" מאפיין rel "של לקשר ". וחזרת השווא מונעת עבודת הקישור כמו קישור רגיל 
רוצים לראות אותו בפעולה? הנה זה הולך.
ואתה יכול להוריד את המקור גם כן.
בחלק הבא של המדריך הקטן הזה אנחנו ניתן יהיו להשתמש באותו הדבר, אבל עם קצת נחמה.
החלת שיטה קלה יותר
כל מה שנשאר כמעט אותו הדבר. אנחנו פשוט לשנות את שיטת AJAX כאן. אז במקום לכתוב את כל אגף AJAX $. אנחנו יכולים להשיג את אותו דבר עם באות.
. ready ( function ( ) { $ (מסמך). מוכנים (פונקציה () {
) . click ( function ( ) { $ ("A.ajax_link"). לחץ (פונקציה () {
+ $ ( this ) . attr ( "rel" ) ) . load ( $ ( this ) . attr ( "href" ) ) ; . $ (. "#" + $ (זה) attr ("rel")) עומס ($ (זה) attr ("href").);
; בתמורת שווא;
});
}); |
זה הרבה פחות מסובך עכשיו, נכון? שיטת העומס טוענת את תוכן AJAX בתוך הרכיב שהוא מחובר אליו. אם $ ("# somediv_id"). עומס ("mypage.php"), הוא ינסה לטעון את התוכן של mypage.php בו. די פשוט, הא? אבל אני מציע לך להתרגל לשיטה העיקרית (המוצג בחלק הראשון).
בקובץ zip יש קובץ נוסף שנקרא ajax2.php אשר מדגים methos זה שיש לו את אותה תוצאה.
אז, AJAX היא לא קשה כמו שזה נשמע, נכון? כאשר אתה הופך מאוד רהוט עם פעולות AJAX, תוכל ליצור קסמים.
תודה על קריאה אגב.
התגובות אחרונות