【发布时间】:2013-01-07 02:56:37
【问题描述】:
首先,我发现的唯一一篇关于这个的帖子 (calling-multiple-dopostback-from-javascript) 对我的问题没有帮助,所以我不相信这个帖子是重复的。
我的 ASPX 网页中有这个 JavaScript 函数,其中包含一个 __doPostBack 函数:
function OpenSubTable(bolID, controlID) {
// code
__doPostBack('UpdatePanelSearch', bolID);
// more code
}
完美运行,我可以像这样将 bolID 的值放入我的代码中:
protected void UpdatePanelSearch_Load(object sender, EventArgs e)
{
var bolID = Request["__EVENTARGUMENT"];
// code
}
问题是,我必须通过回发传递 2 个不同的值。有什么简单的解决方案吗?显然这样的事情是行不通的:
function OpenSubTable(bolID, controlID) {
// code
__doPostBack('UpdatePanelSearch', bolID, controlID); // not that simple, i'm afraid :(
// more code
}
欢迎任何帮助。
问候, 贡纳尔
【问题讨论】:
-
@jbabey 可能有最简单的答案,但推出自己的“doPostBack”功能也不难。它需要做的就是设置几个隐藏输入字段的值,然后提交表单。非常简单,即使对于初学者也是如此。
-
@Cyborgx37 是的,如果(出于某种奇怪的原因)JSON 是不可能的,我会选择隐藏输入。一般来说,除非万不得已,否则您不希望使用隐藏的输入来混淆 HTML。
-
@jbabey 您可以根据需要使用 jQuery 在 DOM 中创建字段。保持您的 HTML 干净。或者,您可以将值放在 URL 中,但我通常不赞成 POST 请求的这种方法(这是 WebForms 通常使用的)。您的方法可能仍然是我推荐的方法。
标签: javascript asp.net postback