如何使用 javascript 从网格视图中的动态控件中获取值

本文关键字:动态控件 获取 视图 何使用 javascript 网格 | 更新日期: 2023-09-27 18:34:17

我有一个动态网格视图包含一个文本框。当用户从文本框中失去焦点时,我想使用 javascript 获取值。因为我在文本框中使用了 onblur() 事件。但我无法获取值。请找到下面的代码

 function validateintforDWOnblur(input) {
    var row = input.parentNode.parentNode;
    var rowindex = row.rowIndex;
    var totaldw = document.getElementById('<%=gdvaddmsrcrt.ClientID%>').rows[rowindex].cells[2].innerHTML;
    var totaldw1 = document.getElementById(totaldw.id).value;
    var dw = document.getElementById('<%=gdvaddmsrcrt.ClientID%>').rows[rowindex].cells[3].innerHTML;
    return true;
}

网格视图中的文本框

 <asp:TextBox ID="txtdiswei" runat="server" onblur="javascript:return validateintforDWOnblur(this)" Width="100px" Text='<%# Bind("DW") %>' Height="40" CssClass="form-control"></asp:TextBox>

请帮我解决这个问题。

如何使用 javascript 从网格视图中的动态控件中获取值

我不确定这是你想要的,但你为什么不试试

var value = document.getElementById('<%=yourTextBox.ClientID%>').value;

所以对于你的表,你可以从每个行传递ClietnId属性,并在javascript函数中使用它

function doSomething(idOfTheTextBox){
   var value = document.getElementById(idOfTheTextBox).value;
}

在网页中

 onblur="doSomething('<%# this.ClientID %>')

如果构建服务器端的行,则可以执行以下操作

TextBox txt = new TextBox();
txt.ID = "something1";
txt.Text = "text";
txt.Attributes.Add("onBlur","doSomething('" & txt.ClientID & "')");
CellOfTheGrid.Controls.Add(txt);