2013-02-14 35 views
1

在我的cs文件裏gridview的rowbound事件中,我創建了一個超鏈接。如何調用cs函數點擊超鏈接

Hyperlink hy = new Hyperlink()

如果特定條件爲真,我在網格中添加超鏈接到一列, 像

e.Row.cell[2].Controls.add(hy)

這是工作的罰款。我想從超鏈接的onclick事件中調用cs文件功能,而不是來自javascript。

hy.Attributes.Add("onclick","return display()") 

但是這不起作用。

回答

0

我假設你的意思是「C」,而不是「JS」。

您將客戶端腳本與服務器端操作相混淆。

看起來您正在使用WebForms - 這對初學者來說並不是最好的,因爲它將無狀態的Web與事件和控件的「形式」混爲一談。

ASP.NET服務器代碼是爲了響應傳入的HTTP請求(一般來說,是GET或POST)而執行的。例如,GET請求通常來自超鏈接或用戶鍵入的地址;而POST則始終來自<form>提交。

您需要設置您的項目,以便響應某個請求調用C#代碼 - 在WebForms中,這很容易,因爲默認情況下,請求會映射到*.aspx文件。簡單的事情你要做的是實現IHttpHandler這是當你的代碼被直接調用來處理一個傳入的請求。

我建議你閱讀這篇文章,這應該有助於你能夠自行解決問題:http://www.codeproject.com/Articles/335968/Implementing-HTTPHandler-and-HTTPModule-in-ASP-NET

我也建議避免WebForms和直接移動到ASP.NET MVC。