2009-09-08 76 views
0

我有一個名爲ShowConfirmationBox()的JavaScript函數。 我想在我的C#代碼後面調用它。 請任何人告訴我我怎麼稱呼它?如何從文件後面的asp.net代碼調用JavaScript函數?

+0

您的C#代碼隱藏文件在服務器上運行 - 您真的無法在服務器上調用客戶端JavaScript函數。您可以將它添加到按鈕單擊或其他東西 - 但它會在瀏覽器中的CLIENT上調用。 – 2009-09-08 06:58:09

+5

請注意,這裏提供的所有解決方案都不實際從C#代碼調用ShowConfirmationBox。其中一些解決方案將確保ShowConfirmationBox在頁面加載時發生,而另一些解決方案則由於點擊按鈕而調用此函數。從C#服務器端代碼中調用客戶端代碼是不可能的。 – 2009-09-08 06:59:15

回答

2

簡單地使用,包括你的腳本到頁面:

string script = "ShowConfirmationBox();"; 

if (!this.Page.ClientScript.IsClientScriptBlockRegistered("myClientScript")) 
{ 
    this.Page.ClientScript.RegisterClientScriptBlock(typeof(MyPage), "myClientScript", script); 
} 
1

您可以使用

Page.ClientScript.RegisterStartupScript() Method

public void RegisterStartupScript(
    Type type, 
    string key, 
    string script 
) 

參數

類型:System .. ::類型 類型的啓動腳本註冊。

關鍵 類型:System .. ::字符串 的啓動腳本的鍵註冊。

腳本 類型:系統.. ::。字符串 啓動腳本文字註冊。

Reference

0

你的問題的意見更有意義不是答案。

正如所指出的,你不能從服務器調用你的javascript函數。

解決的辦法是弄清楚什麼時候你想打電話給你的功能。

如果您想在ButtonClick事件中調用OnClientClink,則即使是ASP:Button控件也是如此。所有ASP.NET控件都有客戶端事件,請使用它們!

相關問題