【问题标题】:Setting value of an input hidden field on .aspx page from a user control从用户控件设置 .aspx 页面上的输入隐藏字段的值
【发布时间】:2012-10-15 12:12:39
【问题描述】:

谁能告诉我如何从用户控件中设置我的 .aspx 页面上的输入隐藏字段值。这个用户控件有几个下拉菜单,我可以在我的用户控件中创建 OnClientSelectedIndexChanged Java Script 事件处理程序,但无法弄清楚如何在我的 .aspx 页面上的隐藏字段中设置值。换句话说,我的 .aspx 页面正在呈现此用户控件,我想从用户控件的 OnClientSelectedIndexChanged Java 脚本事件访问 .aspx 页面输入字段。 提前致谢。 问候,

【问题讨论】:

  • 在你想设置隐藏字段值的地方贴一些代码。
  • 我已经尝试过了,但它找不到隐藏字段并收到“未知实体”警告
  • 我已经在我的 UserControl 上添加了这个 java 脚本,并且 hiddenValidation 是我在 .aspx 页面上的隐藏字段。我正在客户端访问此控件。事实上,我的表单没有验证下拉框,为了解决这个问题,我正在为输入隐藏字段设置一个字符串值。
  • @user1273701 你隐藏输入的id 是什么?

标签: javascript asp.net jquery javascript-events


【解决方案1】:

OnClientSelectedIndexChanged 函数中:

document.getElementById('yourHiddenID').value = 'whatever you want';

附带说明,您应该在 javascript 中绑定您的 javascript 函数,而不是使用控件的标记属性。

【讨论】:

  • 感谢您的回复。我试过了,但它找不到隐藏字段。我已经添加了代码和一些 cmets 以便于 clerity。
  • 我已经通过将 ('') 替换为 ('MainContent_hiddenValidation') 来实现它。非常感谢您的帮助。
【解决方案2】:

我不确定您的问题是在客户端还是服务器端访问 aspx 中的隐藏控件。

如果在客户端你可以写一个 javascript 到OnClientSelectedIndexChanged 并更新 ASPX 的隐藏字段,那么当一个 ASPX 的所有 ASCX 部分在呈现给客户端(浏览器)时会变成一个 DOM

控件名称将以您的 ascx 标记名称和标识符作为前缀,因此您可能需要使用 ClientID 来获取控件的 ID。

在回发的服务器端,您可以使用 Request.Form 获取 aspx 的值,每当回发发生时,控件的所有值都会在 Request.Form 集合中传递。

【讨论】:

    猜你喜欢
    • 2015-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-20
    相关资源
    最近更新 更多