
replaceWith. השיעור מציין במפורש שהפונקציה הנכונה היא replaceWith.הטקסט המלא של הדקות הראשונות בהרצאה «שימוש ב-AJAX MVC - חלק 2» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
כעת אנחנו הולכים לראות שיטה נוספת לבצע גלישת אדג'אקס ולשלוח בחזרה תשובה ללקוח. בשיטה הקודמת אנחנו שלחנו סטטוס קוד או bad request או ששלחנו שה-request הייתה בסדר גמור, סטטוס קוד אוקיי.
אז מה אנחנו יכולים לעשות כרגע בשביל לשלוח משהו אחר? בשיטה הזאת אנחנו הולכים להחזיר מעין קוד html שאותו הלקוח הולך לקבל ואנחנו הולכים לשלב אותו באותו הדף בשביל להגיד לו שהגלישה הצליחה או נכשלה.
קודם כל במידה והיה לנו כאן איזושהי בעיה עדיין אנחנו נחזיר bad request אבל במידה והכל בסדר אנחנו שומרים את הנתונים במסד הנתונים ואנחנו מחזירים במקום להחזיר סטטוס קוד אוקיי אנחנו מחזירים partial view.
בואו נקרא ל-view הזה product partial נשלח לו את המוצר כדי שיאכלס אותו בנתונים ואנחנו נבצע את זה במקום החזרת סטטוס קוד אוקיי. כל מה שנשאר לנו לעשות עכשיו זה ללכת ולבנות את אותו רכיב של ה-product partial.
בואו ניגש ונוסיף view, נגדיר אותו כ-partial view, נקרא לו product partial, נבצע add ונגדיר אותו בצורה הבאה: והראשון using ואנחנו נמצאים במרחב שמות בואו נעתיק אותו ממקודם.
נרחב שמות אפילו גם את המודל לאחר מכן נגדיר פה דיו בתוך הדיו נגדיר את קוד ה-HTML שאנחנו רוצים להציג כאשר מוצר הצליח להתווסף בהצלחה.
נרשום your product ונגדיר כאן במודל את ה-product name as been added successfully. נציג גם את ה-price product price נלך למודל וניגש ל-unit price.
זה פיסת HTML שאנחנו רוצים להחזיר ולכן הגדרנו את הפיסה הזאת בתוך פרשל view. דבר חשוב בואו נגדיר פה קלאס נגדיר אותה כעדד פרודקט אנחנו בהמשך הולכים להשתמש בקלאס הזאת בשביל להכניס את קוד ה html הזה לתוך הדף אז כעת אנחנו בנינו את הפרשל view ואנחנו הולכים לבצע את האינטגרציה בינו לבין
הקליינט סייד אז יש לנו פה את הקריאייט בקריאייט ביצענו שליחת אג'קס פונקציית success הולכת לקבל בחזרה פיסת html ולכן אנחנו נגדיר html כאן בפיסה הזאת.
עכשיו ברגע שהפעולה הצליחה אנחנו נקבל בחזרה את ה-parcial view ואנחנו צריכים במקום ה-alert לשלב אותו בתוך הדף הנוכחי. ולכן מה שנעשה אנחנו נלך ונחפש על ידי jQuery קלאס שנקראת AddedProduct ונגדיר בעברת jQuery Replace ב-HTML שקיבלנו מהשר"ט.