none
מדוע אי אפשר לשים custom Attribute לשדה hidden

    שאלה

  • מצ"ב 2 שורות:

    Line 102:                                <asp:Label  Text="" Visible="false" ID="NoFile" runat="server"  xField="NoFile" ></asp:Label>
    Line 103:                            <asp:HiddenField    value=""  ID="NoFile2" runat="server"  xField="NoFile" />

    עם שדה ה label אין בעיה

    אך בשדה ה HIDDEN מפריע לו שאני שם attribute משלי.

    השאלה היא דבר ראשון למה?

    דבר שני האם זה פתיר בצורה כלשהיא  חוץ מהדרך העקומה של להשתמש ב hidden label בתור שדה מחליף?

    יום ראשון 13 מאי 2012 13:59

תשובות

  • HiddenField יורש ממחלקה Control

    Label יורש ממחלקה WebControl

    WebControl היא מחלקה חכמה יותר ובעלת פונצקיונליות רבה יותר לרבות property בשם Attributes המכיל את ה-Attributes המצויינים ב-ASPX

    מאחר ולמחלקה Control אין property שכזה אזיי אתה לא יכול לצרף Attributes משלך

    פתרון אפשרי לבעיה הוא להשתמש ב-HTML Server Control. לדוגמא:

    <input runat="server" type="hidden" ID="hidden1" xField="blabla"/>

    • סומן כתשובה על-ידי tetitu יום שלישי 15 מאי 2012 04:39
    יום שני 14 מאי 2012 21:05
    מנחה דיון
  • השדה hidden כאשר הוא מוגדר באופן הבא:

    input runat="server" type="hidden" ID="hidden1" xField="blabla"/>

    יכול לקבל Attributes מהקוד. לדוגמא,

    this.hidden1.Attributes.Add("xFields", "blabla");

    • סומן כתשובה על-ידי tetitu יום רביעי 16 מאי 2012 06:49
    יום שלישי 15 מאי 2012 13:17
    מנחה דיון

כל התגובות

  • בבקשה :) זה ממש מציק לי.
    יום שני 14 מאי 2012 15:04
  • HiddenField יורש ממחלקה Control

    Label יורש ממחלקה WebControl

    WebControl היא מחלקה חכמה יותר ובעלת פונצקיונליות רבה יותר לרבות property בשם Attributes המכיל את ה-Attributes המצויינים ב-ASPX

    מאחר ולמחלקה Control אין property שכזה אזיי אתה לא יכול לצרף Attributes משלך

    פתרון אפשרי לבעיה הוא להשתמש ב-HTML Server Control. לדוגמא:

    <input runat="server" type="hidden" ID="hidden1" xField="blabla"/>

    • סומן כתשובה על-ידי tetitu יום שלישי 15 מאי 2012 04:39
    יום שני 14 מאי 2012 21:05
    מנחה דיון
  • זאת אומרת שאין לי ברירה ואם אני רוצה את הפונקצונאליות הזאת אני צריך ליצור server control משלי
    יום שלישי 15 מאי 2012 04:46
  • איזה פונקציונאליות אתה צריך שה-HTML Server Control לא מסוגל לתת?
    יום שלישי 15 מאי 2012 12:36
    מנחה דיון
  • אני עובר על כל הקונטרולים שיש לי בדף ובונה להם שאילטת הוספה/עדכון בהתאמה.

    ועל מנת שאני אדע לאיזה שדה ב SQL  הוא משוייך אני מוסיף  את ה אטריביוט  xField

    ומכיוון שהקונטרול asp:hidden לא יכול לקבל אטריביוטים שלא הוגדרו בשבילו מראש אז ני צריך ליצור server control משלי עבור שדה hidden שכן ידע לקבל את זה.

    יום שלישי 15 מאי 2012 12:50
  • השדה hidden כאשר הוא מוגדר באופן הבא:

    input runat="server" type="hidden" ID="hidden1" xField="blabla"/>

    יכול לקבל Attributes מהקוד. לדוגמא,

    this.hidden1.Attributes.Add("xFields", "blabla");

    • סומן כתשובה על-ידי tetitu יום רביעי 16 מאי 2012 06:49
    יום שלישי 15 מאי 2012 13:17
    מנחה דיון
  • תודה מרוב server controls שכחתי ש html controls קיימים


    • נערך על-ידי tetitu יום רביעי 16 מאי 2012 10:12
    יום רביעי 16 מאי 2012 06:50