я не могу получить доступ к столбцу radgrid в javascript …. как я могу получить к этому доступ ..?

#javascript #asp.net

#javascript #asp.net

Вопрос:

я использую radgrid в asp.net и я хочу получить доступ к метке radgrid с именем «editor_status» в javascript…it недоступен в javascipt … с другой стороны, если я беру простую метку за пределами сетки, то она доступна в javascript … я попробовал следующий код:

HTML:

     <telerik:GridTemplateColumn  DataField="Editor_status" HeaderText="Editor_status" ReadOnly="true">
    <ItemTemplate>
    <asp:Label ID="Editor_status"     runat="server" Text='<%#Eval("Editor_status")%>' BackColor="SkyBlue"  Font-Size="14px"></asp:Label>
    </ItemTemplate>
    </telerik:GridTemplateColumn>




    <script>

     $(document).ready(function () {
     var a=document.getElementById('<%=editor_status.ClientID%>').innerText;
    });

    </script>
  

это не может быть доступ к ярлыку…
с другой стороны, если я возьму просто label like вне radgrid

 <label id="editor_status1"    runat="server" >Available</label>
  

тогда он доступен в javascript …. как я могу получить доступ к label внутри radgrid..

Комментарии:

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

Ответ №1:

Поскольку вы используете grid, поэтому вы не можете напрямую обращаться к label внутри grid, но вы можете создать функцию javascript для доступа к каждой из меток внутри radgrid.

 $(document).ready(function () {

 $.each($find("<%=RadGrid1.ClientID %>").get_dataItems(), function (index, value) {
            if (value.findElement("Editor_status") == null) 
            {
                var a = value.findElement("Editor_status").innerText;
            }
        });
});
  

Попробуйте это, это должно сработать.

Комментарии:

1. если вы используете MasterTableView, то вам нужно несколько изменить логику в методе $.each, например $.each($find(«<%= RadGrid1. ClientID %>»).get_masterTableView().get_dataItems(), функция (индекс, значение)