asp.net 从静态函数访问控件

问题描述 投票:0回答:3

我有一个网络表单,在该网络表单中,我尝试从静态方法访问面板对象,但无法访问它如何从静态方法访问面板对象。为什么我要尝试从静态访问对象?因为我使用的是 JQUERY,它只接受静态方法。

我尝试将面板存储在 Page_Load() 的会话中并从静态方法中检索它,但它不起作用。

jquery asp.net static-methods
3个回答
6
投票
public static void DoSomething()
{
    if (HttpContext.Current != null)
    {
        Page page = (Page)HttpContext.Current.Handler;
        TextBox TextBox1 = (TextBox)page.FindControl("TextBox1");

        TextBox TextBox2 = (TextBox)page.FindControl("TextBox2");
    }
}

5
投票

您可能在 aspx 页面中使用 web 方法从 jQuery

ajax()
调用它。您无法访问 Web 方法中的控件,而是通过
ajax
调用将信息传递到您的 Web 方法,并将信息从
web method
返回到 jQuery ajax
callback
并在 javascript jQuery 回调函数中在面板上执行操作。


0
投票

我自己总是在后面的代码中使用非静态函数,并从我的 WebMethod 中调用它,我所需要做的就是将它们放在我的函数中,而不是 WebMethod 中。要从 WebMethod 调用该函数,您应该创建页面的对象。例如,假设我们有一个名为“add.apsx”的页面,并且我们还有函数 AddNewRecord() 和一个 WebMethod AddRecord()。在 AddRecord() 方法中,您可以将 AddNewRecord 函数调用为 new add().AddNewRecord(),并且您可以从该函数中自由访问所有页面元素。我希望它有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.