גישה ל asp:TextBox מתוך JS

גישה ל asp:TextBox מתוך JS

האם אני יכול לגשת לפקד asp:TextBox מתוך JS, ולהעלימו ? ניסיתי :
document.getElementById('UserTextBox').Visible = true;​
מכיוון שזה פקד צד שרת, אני מניח שאי אפשר להשתמש ב 'style.display = 'none או ב 'style.visible = 'hidden לכן ניסיתי את המאפיין Visible שאמור להיות לו. אך כמובן
שזה לא עבד... האם יש לכך פתרון ?
 

yuval k

New member
למה ש-style.display לא יעבוד?

ברגע שהפקד מסיים את תפקידו בעיבוד של צד-השרת, הוא מוצג כפקד צד-לקוח לכל דבר (עד שהוא צריך לעשות פעולה שתגרום ל-postback והרצת קוד צד-שרת אחר/נוסף, כמובן) - ולכן style.display יעבוד גם יעבוד
המאפיין Visible הוא מאפיין ששייך לו כשהוא מעובד בצד השרת (שם הוא באמת asp:TextBox)... העניין הזה באמת לא ברור לגמרי
 
מה לא ברור לגמרי ?

השאלה שלי, או הטכנולוגיה ? אם השאלה שלי, אשאל שוב, אם הטכנולוגיה - אשמח לדעת למה התכוונת. בכל מקרה, אתה בעצם אומר, שכל פקד צד שרת (כגון כפתורים, תיבות וכו'), כאשר אני רוצה לבצע עליו פעולות בלקוח, אני מתייחס אליו כמו אל חבריו שאינם גם בצד שרת. ואם אני רוצה להתייחס אליו מתוך פונקציית צד שרת, אז יש לו את המאפיינים הרלוונטים השונים מצד הלקוח. אמת ? אגב, כאשר אני מתייחס אליו בלקוח, הבנתי שיש בעיה להעביר לפונקציית ה JS את המשתנה this, וחייבים לעבוד עם שליחת ID, וביצוע getElementById. מכיר בעיה כזו ?
 

yuval k

New member
הרעיון של פרופרטיס משותפים לא ברור.

"כאשר אני רוצה לבצע עליו פעולות בלקוח, אני מתייחס אליו כמו אל חבריו שאינם גם בצד שרת. ואם אני רוצה להתייחס אליו מתוך פונקציית צד שרת, אז יש לו את המאפיינים הרלוונטים השונים מצד הלקוח." לא הבנתי
כשאתה רוצה לבצע עליו פעולות בלקוח, אתה מטפל בו בלקוח כמו קונטרול צד לקוח - אם הוא חושף אירועים או שיטות מיוחדות, מה טוב. כשאתה עובד איתו בשרת, אתה עובד איתו לפי ההגדרה של הקונטרול הזה לשרת. ולא, אין בעיה להעביר this לפונקציית JS. השאלה מה אתה רוצה לעשות...
<input type="button" id="myID" onclick="alert(this.id);" value="click me" />​
יקפיץ לך חלון הודעה עם "myID".
 

zong1111

New member
ID ושאר ירקות

ASP.NET אוסף בעצם אוביקטים של HTML (צד לקוח) במעטפת יפה ונוחה, אבל הדבר היחיד שהדפדפן שלנו מבין זה HTML (ושאר ירקות) לכן התוצר הסופי לאחר סיום העבודה של השרת יהיה דף שמכיל אוביקטים של HTML בלבד, כשכל אוביקט ASP.NET יתורגם כאמור לאוביקט HTML 'פשוט', אבל ... ASP.NET מקצה לכל פקד שם יחודי משלו, שם שמשתרשר פנימה אם תוסיף control user לדף למשל, כך שאם תנסה לפנות לאוביקט שנוצר ע"י ASP.NET מתוך JS כדאי: 1. לפנות לשם שניתן לו ע"י ASP.NET 2. לכתוב את הפונקציה בשרת ולתת לשרת לרשום אותה בדף HTML אם תידרשו לעוד מידע ו/או דוגמאות, תשאלו ...
 
למעלה