将隐藏字段值传递给javascript函数

时间:2012-11-05 18:57:42

标签: javascript asp.net

是否可以将gridview中定义的隐藏字段的值获取到javascript函数,因此我有一个gridview,其中定义了一个链接按钮。如果用户点击链接按钮,我正在调用javascript函数。我想在javascript函数中隐藏字段值。

另外,我想知道是否可以在一个hiden字段中传递多个值,然后在javascript函数中将它们拆分。

任何帮助将不胜感激。我不想去后面的代码,然后从那里调用javascript函数。

2 个答案:

答案 0 :(得分:1)

第一个任务是为隐藏字段确定一个“合适的选择器” - 这可以是每个隐藏字段的ID(通过control.ClientID获取)或更常用的选择器,如“所有隐藏字段”特殊div(带有特定ID)“。使用<%= .. %>(或数据绑定上下文中的<%@ .. %>)将此信息放入实际的HTML响应中。

确切的方法会有所不同 - 基本上,无论哪个最简单 - 都可以完成任务。

然后,使用您喜欢的库或带有适用选择器支持的高级浏览器(更容易找到好的库) 1 ,使用给定的选择器。在jQuery中,这可能类似于以下内容,其中fn是处理所有值的函数。实际的选择器是引号中的东西:

fn(jQuery("#clientIdOfGridView input[type='hidden']"))

可能在ASP.NET中编写,这是如何注入适当的元素ID:

fn(jQuery("#<%= gridView.ClientID %> input[type='hidden']"))

这些都会将表示隐藏字段元素的jQuery object 传递给函数。然后使用val()和/或each()(请参阅jQuery文档和其他SO问题)进行使用。

有很多关于jQuery和“选择值”的问题,所以这个完整的“答案”真的是为了如何开始提供一个线索 - 快乐编码:)


1 虽然这可以通过ID和DOM遍历“old-school”找到元素手动完成,但我觉得浪费时间手动完成这样的任务。我喜欢jQuery,但有其他选择。使用现有的车轮;他们滚得相对快。

答案 1 :(得分:0)

您可以根据需要在隐藏字段的一个value-attribute中指定尽可能多的值。您必须确保使用“,”或“#”之类的分隔符,您可以在函数中使用它来根据需要分割值字符串。