helpwithmycode Ответов: 1

Как я могу найти элемент управления, который находится в сеточном представлении C# с помощью java-скрипта?


Вот мой код, тогда я задам свой вопрос ниже.

 var GridView = document.getElementById('<%=gridUploads.ClientID %>')
    if (GridView.rows.length > 0) {
        for (var i = 1; i < GridView.rows.length; i++) {
//find controls
 var modal = GridView.rows[i].getElementById('<%= myModal.ClientID %>')
}


Мой модальные украшения в качестве элемента-шаблона в C# сетки-просмотр под названием gridUploads. Я хотел бы найти модальный элемент управления в javascript, как бы я это сделал?


контроль, который я пытаюсь захватить, это
1. модальный
2. другие элементы, такие как вход, img и т. д.

если я могу понять, как найти модальный, я могу в значительной степени выяснить остальное.

вот объявление элементов, если вы чувствуете, что это поможет.


<ItemTemplate>...
     <asp:Panel ID="pnluploads1" runat="server">
           <div class="scans-container">
           <div class="scanimage">
           <input class="hideelement toggle" id="'<%#Container.DataItemIndex.ToString() %>'" type="checkbox" checked="checked">
            <label class="lblscanImg"  for="'<%#Eval("ClientOrderNo") %><%#Container.DataItemIndex.ToString() %>'"> view scan</label>
           <div id="expand">
           <img id="myImg" src="../../img/test.jpg" width="300" height="200">
</div>
</div>
</div>
<!-- The Modal -->
    <div id="myModal" class="modal">
    <span class="close">×</span>
     <img class="modal-content" id="img01" src="#">
     <div id="caption"></div>
       </div>
...
</ItemTemplate>




большое спасибо за вашу помощь.

Что я уже пробовал:

I have tried

1) var modal = GridView.rows[i].getElementById('myModal');
//returned null.

2) var modal = document.getElementById('<%=((gridUploads)Container).FindControl("myModal").ClientID %>'); 
//grid couldn't find container

F-ES Sitecore

Мы не можем сказать точно из того, что вы предоставили. Просмотрите исходный код страницы и посмотрите, как элемент, к которому вы хотите получить доступ, представлен в html, и используйте его для разработки способа доступа к нему.

1 Ответов

Рейтинг:
4

F-ES Sitecore

Самый простой способ-найти элементы по имени класса

var grd = document.getElementById('<%=gridUploads.ClientID%>');
var m = grd.getElementsByClassName('modal');
for (var i = 0; i < m.length; i++) {
    var c = m[i].getElementsByTagName('div');
    c[0].innerHTML = 'Caption ' + i;
}