Правильный или эффективный способ доступа к объекту DOM в страницах ASPX

sharepoint.stackexchange https://sharepoint.stackexchange.com/questions/116596

  •  29-09-2020
  •  | 
  •  

Вопрос

Я хочу получить значение TextBox, которое входит пользователь.Ниже приведен фрагмент Code Page ASPX:

<asp:TextBox id="txtUserName" runat="server" />
.

Теперь, который является лучшим способом доступа к объекту DOM на странице ASPX

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>
.

Это было полезно?

Решение

SharePoint 2013 / SharePoint Online

в .NET Framework 4 был введен jQuery Библиотека используется, которая предлагает мощный набор инструментов для сопоставления набора элементов в документе.

<Сильные> Вариант 1

Используйте селектор, чтобы найти элемент по ID, например:

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 - это правильный способ сделать, но просто изменить имя переменной на что-то другое, так как это слово JavaScript

<script type="text/javascript">
 var _value= document.getElementById(<%= txtUserName.ClientID %>).value;
 alert(value);
</script>
.

Но я предпочитаю использовать jQuery, которая делает жизнь намного проще.Для этого добавьте файл jQuery в вашем aspx или meatherpage.Затем используйте ниже строку

<script type="text/javascript">
 $(document).ready(function(){     
   var _value= $(<%= txtUserName.ClientID %>).val();
   alert(value);
 });
</script>
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top