【问题标题】:passing hidden field values to javascript function将隐藏字段值传递给 javascript 函数
【发布时间】:2012-11-06 03:26:12
【问题描述】:

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

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

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

【问题讨论】:

标签: javascript asp.net


【解决方案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 遍历查找元素来手动完成,但我发现手动完成这样的任务是在浪费我的时间。我喜欢 jQuery,但还有其他选择。使用现有的轮子;它们滚动相对较快。

【讨论】:

  • 我没有在我的应用程序中使用 jquery。你有javascript解决方案吗?
  • jQuery is JavaScript(也有更轻量级的选择器库可用;请问 Google 先生)。如果您更喜欢手工操作,那就学会手工操作。也就是说,研究那个特定的任务,现在你知道它是什么了。 (任务:“根据特定结构查找作为特定 DOM 元素后代的隐藏字段。”)
【解决方案2】:

您可以在隐藏字段的一个值属性中指定任意数量的值。您必须确保使用分隔符,如“,”或“#”,您可以在函数中根据需要使用分隔符来拆分值字符串。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-10
    • 2012-11-04
    • 1970-01-01
    • 2015-09-12
    • 2014-08-14
    • 1970-01-01
    • 2010-10-21
    • 1970-01-01
    相关资源
    最近更新 更多