如何将Id和字段值分配给隐藏字段
本文关键字:字段 分配 隐藏 Id | 更新日期: 2023-09-27 18:10:47
我有一个gridview
与少数rows
和columns
, ListBox
控件列。
标记:
<asp:GridView ID="gvDataEntry" runat="server" AutoGenerateColumns="False"
<Columns>
<ItemTemplate>
<asp:ListBox ID="lstBox1" ondblclick="ListBox1_DoubleClick()" runat="server" CssClass="listBox"></asp:ListBox>
</ItemTemplate>
<ItemTemplate>
<asp:ListBox ID="lstBox2" ondblclick="ListBox1_DoubleClick()" runat="server" CssClass="listBox"></asp:ListBox>
</ItemTemplate>
<ItemTemplate>
<asp:ListBox ID="lstBox3" ondblclick="ListBox1_DoubleClick()" runat="server" CssClass="listBox"></asp:ListBox>
</ItemTemplate>
</Columns>
</asp:GridView>
显示为
-----------------------------------------------------
Name | Column1 | Column2 | Column3
-----------------------------------------------------
FieldName | LB1 | LB2 | LB3
----------------------------------------------------
FieldName 1 | LB1 | LB2 | LB3
-----------------------------------------------------
当我双击Listbox
时,我想做一些功能,所以我在gridview外添加了隐藏字段
<asp:HiddenField ID="ListBox1Hidden"
runat="server" />
Javascript <script lang="javascript">
function ListBox1_DoubleClick() {
document.forms[0].submit();
}
</script>
On Page Load
if (Request.Params["ListBox1Hidden"] != null)
{
//This means It was double click
}
现在,当我双击ListBox
这个事件触发。现在我想得到的Name
, RowIndex
和Id
的ListBox点击
如果我双击第一行的LB1
,我想得到名称:FieldName
, Id: lstBox1
和RowIndex。
我的疑问是,我所做的仅仅是一个隐藏的领域就能实现吗?如果有,该怎么做?
否则,我应该在ItemTemplate
中包含每个HiddenField
来实现这一点吗?
哪一个可以帮助我实现这一点,并提供我这样做的代码?
尝试在javascript函数中传递列的值。这样的:
'<%# Eval("ColumnName") %>'
例如,我们有这样的双击事件:
ondblclick="ListBox1_DoubleClick()"
尝试将其更改为:
ondblclick="ListBox1_DoubleClick('<%# Eval('"ColumnName'") %>')"
因此,通过这种方式,您可以将任何列的值作为参数传递给javascript函数。
注意:在双引号"ColumnName"内,我们必须使用正确的转义字符