Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将onclick事件添加到按钮会导致页面中出现错误_Javascript_Asp.net_Html_Vb.net - Fatal编程技术网

Javascript 将onclick事件添加到按钮会导致页面中出现错误

Javascript 将onclick事件添加到按钮会导致页面中出现错误,javascript,asp.net,html,vb.net,Javascript,Asp.net,Html,Vb.net,下面是我的asp.net应用程序中按钮的html代码,该应用程序使用vb作为服务器端语言。该按钮在服务器端处理,下面也列出了代码。我的问题是当我添加onclick事件时(我想在同一个页面或父页面中调用javascript函数,因为该页面仅在应用程序的iframe中显示,而不是单独显示) 目前,这是按钮的html <asp:button class="smalltextbutton" id="Button1" runat="server" Text="Save"></asp:bu

下面是我的asp.net应用程序中按钮的html代码,该应用程序使用vb作为服务器端语言。该按钮在服务器端处理,下面也列出了代码。我的问题是当我添加onclick事件时(我想在同一个页面或父页面中调用javascript函数,因为该页面仅在应用程序的iframe中显示,而不是单独显示)

目前,这是按钮的html

<asp:button class="smalltextbutton" id="Button1" runat="server" Text="Save"></asp:button>

当更改为以下内容时,我在启动页面时收到一个错误,声明“编译器错误消息:BC30456:“refreshParentTree”不是“ASP.tasks\u modifytask\u aspx”的成员。 "


现在javascript函数是非常基本的,在表单之外,下面是它的外观

<script language="javascript">
 function refreshParentTree(){
        alert('refresh parent tree hit');
        }
</script>

函数refreshParentTree(){
警报(“刷新父树命中”);
}
在服务器端,下面是我处理按钮点击的代码(vb)

Private子按钮1\u单击(ByVal sender作为System.Object,ByVal e作为System.EventArgs)处理按钮1。单击
'调试:
如果Trace.IsEnabled,则cGK_testSpot.Text+=“按钮1\u单击()开始
” '调试: 如果Trace.IsEnabled,则cGK_testSpot.Text+=“printArrayList(从P2_CustomFields_Detail中删除除此之外的所有列表):“+CustomFieldsLibrary.printArrayList(arlist_dyncomponts)+” 如果Page.is有效,则 CustomFieldsLibrary.deleteAllDynamicFieldsExceptThisList(lnCurrent,13,-1,arlist_dynCompnts,(New-SqlConnection((New-ConnInfo).GetConnString)),True) UpdateDatabase() 如果未启用Trace.IsEnabled,则服务器.Transfer(“viewTask.aspx?taskgrpid=“&lnCurrent&”&taskgrpcategory=13&ptaskgrpid=“&Request.QueryString(“ptaskgrpid”)&”&ptaskgrpcategory=“&Request.QueryString(“ptaskgrpcategory”)&&refresh=true”) 其他的 populateDropDowns() 如果结束 如果Trace.IsEnabled,则cGK_testSpot.Text+=“printArrayList:”+CustomFieldsLibrary.printArrayList(arlist_dyncomponts)+“” '调试: 如果Trace.IsEnabled,则cGK_testSpot.Text+=“
按钮1_Click()结束” 端接头

因此,基本上,我在寻找错误的地方,比如页面给我错误的原因,一旦这些问题得到解决,我需要onclick在同一页面上调用javascript函数,然后调用父函数,或者直接调用父函数。谢谢您的帮助。

尝试将OnClick更改为OnClick(小写字母)。由于标记具有runat=“server”属性,因此它是一个服务器控件,OnClick随后将引用必须在代码隐藏中定义的服务器端事件。

而不是OnClick

是一个服务器端元素,因此它有自己的特定于ASP.NET的服务器端属性,这些属性是在服务器端处理的。因此,
OnClick
并不是您所认为的常规HTML元素。编译器正在服务器上查找该代码,但它不在那里


另一方面,
OnClientClick
,只被视为字符串,不由编译器计算。(除了在输出中发出
onclick
HTML属性之外。)它假定将有客户端代码来处理它。

谢谢。这很有效。在几分钟内,当它允许我接受答案时,我将确保接受。小写或大写不重要,onclientclick在david回答时解决了此问题,但感谢您的帮助和时间。
<script language="javascript">
 function refreshParentTree(){
        alert('refresh parent tree hit');
        }
</script>
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