__doPostback - 从JavaScript调用事件后面的代码?

时间:2009-04-15 13:54:07

标签: asp.net javascript events postback

我希望在JavaScript中调用我的代码中的方法,我知道该怎么做..我必须调用__DoPostBack传递控制名称和参数..

但如果事件不存在,即无控制怎么办?真的我要做的是调用一个事件..但事件不存在,因为没有与之关联的控件..

我可以做到这一点:

If IsPostBack Then
       If Request(”__EVENTTARGET”).Trim() = “CleanMe” Then
           CleanMe()
       End If
.....

但这意味着我必须手动完成。我可以不连接一个事件....否则我会有很多不同的IF(即如果这个传递然后调用这个..等等。)。

有什么想法吗?

由于

3 个答案:

答案 0 :(得分:2)

如果要使用__doPostBack(),则必须具有控件才能接收命令。但是,您不必明确连接事件来处理它。如果你想让__doPostBack()调用,比如Foo(),请执行以下操作:

MyControl : IPostBackEventHandler
{
    void RaisePostBackEvent(string eventArgument)
    {
        Foo();
    }
}

调用__doPostBack()将在目标控件上调用RaisePostBackEvent方法。

答案 1 :(得分:2)

您可以使用页面方法来调用函数后面的代码,这是一个示例的链接:http://blogs.microsoft.co.il/blogs/gilf/archive/2008/10/04/asp-net-ajax-pagemethods.aspx

答案 2 :(得分:1)

如果你真的想要连接到一个事件,那么给你带来麻烦的选项是创建一个隐藏的asp按钮并通过javascript点击它