קריאה ל JQUERY מ - APP_CODE

flop696

New member
קריאה ל JQUERY מ - APP_CODE

אני מנסה להפעיל JQUERY מתוך קובץ CS ב - APP_CODE


ScriptManager.RegisterStartupScript(Page, Page.GetType(), "", script, true);


אני מקבל את השגיאה הבאה:
System.Web.UI.Page is a 'type' but is used like a 'variable

מה אני עושה לא נכון?

תודה
 

arik23m

New member
הפרמטר הראשון שלך לא נכון

הפרמטר הראשון הוא הקונטרול אליו משויך הסקריפט
ואילו אתה שלחת שם של מחלקה בדוט נט: Page

האם העמוד שאתה מנסה לשלוח ממנו יורש מ Page?
אם כן, תוכל לשכתב את הקוד כך:

ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), "", script, true);



עמודי CS של APP_CODE אינם קשורים בDEFAULT למנגנון העמודים (ASPX) של דוט נט.
אם אתה לא יורש מPAGE
תסביר למה אתה מעונין לרשום סקריפט דרך העמודים הנ"ל ולא דרך הCODE BEHIND בעמוד עצמו
 

flop696

New member
כמה פעולות ב app_code

אני אנסה להסביר:

עמוד ASPX קורא ל - PUBLIC CLASS עמוד CS שב - APP_CODE

עמוד CS עושה כמה פעולות כאשר אני בסה"כ רוצה שאחת הפעולות (האמצעית מבין שלוש) תהיה טריגר לפתיחה של SLIDER ב - JQUERY.
נראה לי הכי פשוט לשים את הקריאה ל - JQUERY דרך ה - CODE BEHIND כבר ב - CLASS.
 

arik23m

New member
אממ

לטעמי משהו לא נשמע טוב במבנה הזה שאתה מתאר.
אבל אתה בטח מתעקש להשאר במבנה הזה, אז תחת ההגבלה הזאת:
תנסה שהקובץ הנ"ל יחזיר לך מחרוזת בJS להרצה ו-ONSUCCESS
של הJQUERY תבצע EVAL לקוד שהוא יחזיר.

כאמור - לעמוד הCS אין סקריפט מנג'ר והוא לא יורש מPAGE (אם לא הגדרת אותו) לכן אין מקום להשתמש בSM.REGISTER...
 
מה שאני הייתי עושה

זה להגדיר פעולה שתריץ בJS בONREADY
ותפתח את הסליידר במידה ומשתנה כלשהו הוא TRUE...
המשתנה יכול להיות שדה בוליאני בקוד ויכול להיות אלמנט שיש בתוכו מחרוזת כלשהו, רצוי לעשות אותו נסתר ב STYLE='DISPLAY:NONE' וכמובן שבשום אופן לא לשים ב VISIBLE=FALSE כי אז לא תהיה גישה אליו...

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

Royi Namir

New member
מממ

לא חייבים PAGE בשביל להשתמש בזה
אפשר לגשת ל PAGE על ידי HTTPCONTEXT.
 
למעלה