2010-04-19 90 views
-1

我在母版页上有一组按钮(我附上了下面的代码),但没有提出onclick事件。我拉了最后的页面源,并没有onclick事件出席。正如你所看到的,我尝试了几种不同的方法来解决问题。我正在寻找一个普通的回发到服务器,但我没有得到什么,当我点击任何这些按钮。Onclick not firing

我没有做什么?

--master

<asp:Button ID="btnSubmit" CssClass="btn" runat="server" OnClick ="Button_Click" /> 
<asp:Button ID="btnSave" CssClass="btn" CommandArgument="1" CommandName="ButtonPress" runat="server" OnClick="Button_Click" /> 
<asp:Button ID="btnClear" CssClass="btn" CommandArgument="8" CommandName="ButtonPress" runat="server" OnCommand="Button_Command" /> 
<asp:Button ID="btnCancel" CssClass="btn" CommandArgument="4" CommandName="ButtonPress" runat="server" OnCommand="Button_Command" /> 

--master代码隐藏

Protected Sub Button_Command(ByVal sender As Object, ByVal e As CommandEventArgs) Handles btnCancel.Command, btnClear.Command 
    Session("ButtonClicked") = e.CommandArgument 
End Sub 

Protected Sub Button_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnSave.Click, btnSubmit.Click 
    Session("ButtonClicked") = CType(sender, Button).CommandArgument 
End Sub 

--Page来源

<input type="submit" name="ctl00$btnSubmit" value="Submit" id="ctl00_btnSubmit" class="btn" /> 
<input type="submit" name="ctl00$btnSave" value="Save" id="ctl00_btnSave" class="btn" /> 
<input type="submit" name="ctl00$btnClear" value="Clear" id="ctl00_btnClear" class="btn" /> 
<input type="submit" name="ctl00$btnCancel" value="Cancel" id="ctl00_btnCancel" class="btn" /> 
+0

如果从母版页中删除所有“onClick”和“onCommand”属性,并在代码隐藏中使用“Handles”子句,会发生什么情况?它看起来像你所有的按钮明确定义他们的事件,这是不正常的(尽管它应该仍然工作)。 – tloflin 2010-04-19 17:29:02

+0

这不起作用。唯一能让它着火的方法是设置PostBackURL属性。但即使它解雇了,也会引发JS运行时错误,说'theForm'是未定义的。该表单似乎是.Net指定给表单的名称,但它似乎没有看到它。 – NomadicDeveloper 2010-04-19 20:04:21

+0

你确定你有一个'

'标签吗?它里面的按钮? – tloflin 2010-04-19 22:13:41

回答

2

我发现这个问题。这是问题所在。在主页,我不得不改变这一点:

< script language="javascript" src="scriptLibrary.js" type="text/javascript"/>

要这样:

< script language="javascript" src="scriptLibrary.js" type="text/javascript">< /script>

之后,它执行没有错误正常的回发。