Получите значение по нажатой ячейке в Infragistics WebDataGrid, используя JavaScript - PullRequest
1 голос
/ 05 февраля 2020

Я прошел через это со вчерашнего дня и ничего не получил, кроме ошибок.

То, что я хочу, очень просто, я хочу получить значение ячейки, когда я нажимаю на кнопку в строке в Инфраструктура WebDataGrid с использованием JavaScript, вот мой код:

<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
 <script src="Scripts/jquery-1.10.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
    function getCellValue() {
        var grid = $find("WebDataGrid1");
        var usingActivation = grid.get_behaviors().get_selection().get_selectedRows(0).getItem(0).get_cellByColumnKey("test").get_text()
       // var usingRowSelection = grid.get_behaviors().get_activation().get_activeCell().get_row().get_cellByColumnKey("Number").get_text()
    }
</script>
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<table class="nav-justified">
    <tr>
        <td>
<ig:WebDataGrid ID="WebDataGrid1" runat="server" Height="350px" Width="400px">
    <Columns>
        <ig:TemplateDataField Key="TemplateField_0">
            <ItemTemplate>
                <asp:Button ID="Button1" runat="server" OnClientClick="getCellValue()" Text="Button" />
            </ItemTemplate>
            <Header Text="TemplateField_0">
            </Header>
        </ig:TemplateDataField>
    </Columns>
    <Behaviors>
        <ig:Activation>
        </ig:Activation>
    </Behaviors>
</ig:WebDataGrid>
            <asp:ScriptManager ID="ScriptManager1" runat="server">
            </asp:ScriptManager>
        </td>
        <td>&nbsp;</td>
    </tr>
    <tr>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
    </tr>
</table>

Когда я нажимал на кнопку, я обнаружил эту ошибку в отладчике chrome;

enter image description here

похоже, он не нашел элемент управления "WebDataGrid1", пожалуйста, помогите? Я не очень знаком с JS.

1 Ответ

1 голос
/ 06 февраля 2020

Хм, это странно, не могли бы вы попробовать следующее:

var grid = ig_controls.WebDataGrid1;

ИЛИ

var grid = $find('<%= this.WebDataGrid1.ClientID %>')

grid.get_behaviors().get_selection().get_selectedRows(0).getItem(0).get_cellByColumnKey("test").get_text()
...