سؤال

أنا أعمل على مشكلة صغيرة حيث أحاول إظهار/إخفاء لوحة بناءً على معيرين

  1. يجب ألا يكون حقل بيانات معين فارغًا
  2. يجب أن لا تساوي البيانات المحددة المقدمة أيضًا "غير قابلة للنقل"

لسوء الحظ ، لا يبدو أن هذا يعمل من أجلي (لاحظ أن إعداد واحد أو المعايير الأخرى يعمل بشكل جيد.)

        <asp:Panel runat="server" Visible='<%#If(Not String.IsNullOrEmpty(DataBinder.Eval(Container.DataItem, "_236")) Or Not DataBinder.Eval(Container.DataItem, "_236") = "Not Relocatable", True, False)%>'>
        <tr>
            <td>
            </td>
            <td class="align-right lightgreen">
                Buyer would consider relocating a business, if it is:
            </td>
            <td>
            </td>
            <td colspan="3">
                <%#DataBinder.Eval(Container.DataItem, "_236")%>
            </td>
            <td>
            </td>
        </tr>
        </asp:Panel>

هل يمكن لأي شخص أن يقدم يده لتصحيح هذه المشكلة بالنسبة لي؟

هل كانت مفيدة؟

المحلول

بناء الجملة <%# %> هو ربط البيانات بناء الجملة ، وليس بناء جملة التعبير مضمن. لا يمكنك استخدام التعليمات البرمجية الإجرائية الموجودة بداخلها كما يمكنك في الرمز المضمن <% %> العلامات.

يجب أن تحتوي علامات ربط البيانات على واحد Eval أو Bind وظيفة. إذا كنت بحاجة إلى القيام بمتفرعة مشروطة بناءً على هذه الوظائف ، فستحتاج إلى القيام بذلك باستخدام رمز مضمّن حول علامات الربط.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top