طريقة صحيحة أو فعالة للوصول إلى كائن دوم في صفحات أسبكس
-
29-09-2020 - |
سؤال
أريد الحصول على قيمة مربع النص الذي يدخله المستخدم.أدناه هو مقتطف التعليمات البرمجية من صفحة أسبكس :
<asp:TextBox id="txtUserName" runat="server" />
الآن الذي هو أفضل وسيلة للوصول إلى كائن دوم في صفحة أسبكس
1.
<script type="text/javascript">
var value= document.getElementById(<%= txtUserName.ClientID %>).value;
alert(value);
</script>
2.
<script type="text/javascript">
var value= document.getElementById("txtUserName").value;
alert(value);
</script>
المحلول
شير بوينت 2013 / شير بوينت أونلاين
في الإطار الصافي تم تقديم 4 كلينتيدمود الملكية التي تحدد كيف ASP.NET يولد ClientID
لعنصر تحكم يمكن الوصول إليه في البرنامج النصي للعميل.
لتلخيص ، منذ شاريبوانت 2013 أهداف الإطار الصافي 4, ClientIDMode
يمكن استخدامها التي تبسط الوصول إلى التحكم في جانب العميل كما هو موضح أدناه:
مثال:
<asp:TextBox id="boxUserName" runat="server" ClientIDMode="Static" />
جافا سكريبت:
var boxUserName = document.getElementById("boxUserName")
شير 2010 والإصدارات السابقة
المتطلبات الأساسية: مكتبة مسج يستخدم الذي يقدم مجموعة قوية من أدوات لمطابقة مجموعة من العناصر في مستند.
الخيار 1
استخدم المحدد للعثور على العنصر حسب المعرف ، على سبيل المثال:
var quickLaunch = $('[id$=V4QuickLaunchMenu]'); // find element with id which ends with the text 'V4QuickLaunchMenu'
الخيار 2
استخدام CssClass
لتحديد فئة العنصر ، على سبيل المثال:
<asp:TextBox id="boxUserName" runat="server" CssClass="text-box" />
ثم استخدم محدد الفئة:
var boxUserName = $('input.text-box');
المراجع
نصائح أخرى
الخيار 1 هو الطريقة الصحيحة للقيام بها ولكن فقط قم بتغيير اسم المتغير إلى شيء مختلف كما هو الحال في جافا سكريبت
giveacodicetagpre.لكنني أفضل استخدام jQuery الذي يجعل الحياة أسهل بكثير.لتلك إضافة ملف jquery في ASPX أو masterPage.ثم استخدم أدناه خط
giveacodicetagpre.