下面是我的 asp.net 应用程序中一个按钮的 html 代码,它使用 vb 作为其服务器端语言。该按钮在服务器端处理,其中的代码也在下面列出。我的问题是当我添加一个 onclick 事件时(我想在同一页面或父页面中调用 javascript 函数,因为此页面仅显示在我们应用程序的 iframe 中,从不独立)。
目前,这是按钮的 html
<asp:button class="smalltextbutton" id="Button1" runat="server" Text="Save"></asp:button>
当更改为以下内容时,在启动页面时出现错误,指出“编译器错误消息:BC30456:'refreshParentTree' 不是 'ASP.tasks_modifytask_aspx' 的成员。”
<asp:button class="smalltextbutton" id="Button1" OnClick="refreshParentTree()" runat="server" Text="Save"></asp:button>
现在 javascript 函数非常基本,在表单之外,这就是它的样子。
<script language="javascript">
function refreshParentTree(){
alert('refresh parent tree hit');
}
</script>
在服务器端,这是我处理按钮单击的代码(vb)
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'DEBUG:
If Trace.IsEnabled Then cGK_testSpot.Text += "<div style='border: solid thin orange;'>Button1_Click() STARTING<br>"
'DEBUG:
If Trace.IsEnabled Then cGK_testSpot.Text += "<div style='border: solid thin green;'>printArrayList (delete ALL EXCEPT this list from P2_CustomFields_Detail): " + CustomFieldsLibrary.printArrayList(arlist_dynCompnts) + "</div>"
If Page.IsValid Then
CustomFieldsLibrary.deleteAllDynamicFieldsExceptThisList(lnCurrent, 13, -1, arlist_dynCompnts, (New SqlConnection((New ConnInfo).GetConnString)), True)
UpdateDatabase()
If Not Trace.IsEnabled Then Server.Transfer("viewTask.aspx?taskgrpid=" & lnCurrent & "&taskgrpcategory=13&ptaskgrpid=" & Request.QueryString("ptaskgrpid") & "&ptaskgrpcategory=" & Request.QueryString("ptaskgrpcategory") & "&refresh=true")
Else
populateDropDowns()
End If
If Trace.IsEnabled Then cGK_testSpot.Text += "<div style='border: solid thin green;'>printArrayList: " + CustomFieldsLibrary.printArrayList(arlist_dynCompnts) + "</div>"
'DEBUG:
If Trace.IsEnabled Then cGK_testSpot.Text += "<br>Button1_Click() ENDED</div>"
End Sub
所以基本上,我正在寻找这里做错了什么,为什么页面会给我错误,一旦这些问题得到解决,我将需要 onclick 在同一页面上调用一个 javascript 函数,然后调用父母,或直接父母。感谢您的帮助。