Javascript调用VB回发函数导致意外的调用错误

时间:2012-10-19 21:38:53

标签: javascript asp.net ajax vb.net modalpopupextender

这是VB代码:

 Dim button As New Button
 Dim xpanel As New Panel
 button.Text = "Submit"
 button.ID = "button"
 button.Height = "40"
 button.Attributes.Add("Autopostback", "true")
 button.Attributes.Add("Onclick", "Submit_Click") <----commented
 button.Attributes.Add("RunAt", "server")
 Dim trigger As New AsyncPostBackTrigger()
 trigger.ControlID = "button"
 trigger.EventName = "Submit_Click"
 AddHandler button.Click, AddressOf Submit_Click
 xpanel.Controls.Add(button)
 Dim literalx As New Literal
 submitplaceholder.Controls.Add(literalx)
 submitplaceholder.Controls.Add(xpanel)

设置是:从更新面板内部,单击一个按钮,在页面底部的隐藏按钮上触发javascript(一个按钮。按钮功能),然后在ajaxtoolkit上执行“点击”: ModalPopupExtender,导致弹出一个模态窗口,该窗口是使用上面的按钮在page_load上动态填充的(和其他信息,但这对此不重要)。 到目前为止,没有回帖。

现在我们点击该页面的按钮。我希望它回发并调用函数Submit_Click。我不关心实际调用的函数是什么,我知道_Click是保留的,但仍然是:它触发函数但总是出错导致不良行为。

有些事情是不对的,我不能为我的生活想想别的事情。在属性OnClick上使用然后使其成为autopostback似乎无法动态填充控件。 有什么想法吗?

1 个答案:

答案 0 :(得分:2)

button.Attributes是HTML属性的集合,因此无法按您的方式工作。

试试这个:

button.UseSubmitBehavior = True
AddHandler button.Click, AddressOf  Submit_Click

而不是

button.Attributes.Add("Autopostback", "true")
button.Attributes.Add("Onclick", "Submit_Click") <----commented
button.Attributes.Add("RunAt", "server")