2014-02-26 50 views
1

看看這個程序:如何用javascript運行C#命令?

WebForm1.aspx的應該調用C#命令的button1_Click這是從MultiCust_MultipleFunction.cs,但是當我運行的代碼它給出了MultiCust_MultipleFunction.cs錯誤。它說Button1沒有在當前上下文中定義。

MultiCust_MultipleFunction.cs : 

using System; 
using System.Data; 
using System.Configuration; 
using System.Collections; 
using System.Web; 
using System.Web.Security; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Web.UI.WebControls.WebParts; 
using System.Web.UI.HtmlControls; 

public partial class MultiCust_MultipleFunction : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
        Button1.Attributes.Add("onClick", "ShowMessage()"); 
    } 
    protected void Button1_Click(object sender, EventArgs e) 
    { 
        Response.Write("Zaq"); 
    } 
} 

WebForm1的:

順便說一句,當我運行程序我得到

MultiCust_MultipleFunction.cs「此請求提供服務的全球ASAX所需資源的分析過程中發生了錯誤」。 aspx:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 


<html xmlns="http://www.w3.org/1999/xhtml" > 
<head runat="server"> 
    <title>Execute Multiple function with a Button</title> 
</head> 


<script language="javascript" type="text/javascript"> 
    function ShowMessage() { 
        alert("Hi"); 
    } 


</script> 


<body> 
    <form id="form1" runat="server"> 
    <div> 
        <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /></div> 
    </form> 
</body> 
</html> 
+0

那是你的整個WebForm1.aspx文件? – mason

+3

你的'<%@ page ... />'聲明在哪裏?如果它丟失了,那很可能是你的問題。看起來你可能在web.config中關閉了詳細的錯誤,但沒有看到真正的/實際的錯誤。看到這個問題和我的答案在這裏:http://stackoverflow.com/q/21517188/546000 - 不是100%肯定這就是爲什麼我張貼爲評論,而不是回答;希望能幫助到你。 –

回答

0

代碼看起來不錯,嘗試刪除按鈕,然後再次添加它(確保調試器沒有運行),然後點擊項目下的build,它應該修復它。

+0

好吧,我已將OnClick更改爲OnClientClick,但仍會給出與Button1未定義相同的錯誤。 – user3289032

0

呼籲OnClientClick

Button1.Attributes.Add("OnClientClick", "ShowMessage();") 

希望這個方法幫助