2012-11-21 56 views
2

我正在從Silverlight調用JavaScript函數。我的JavaScript文件如下:從Silverlight調用Javascript函數時,出現「調用失敗」的錯誤

function sayHello() { 
    alert("Hello from Silverlight via Javascript"); 
} 

function showText(mytxt) { 
    alert(mytxt); 
} 

在我的Silverlight cs文件,我有2個不同的按鍵2個事件處理程序。 Button1的事件處理程序調用sayHello()。這工作完美。

Button2的事件處理程序調用showText(),並且這個失敗,錯誤「未能調用showText」。 以下是我的Silverlight代碼行。

void myButtonClickEvent(object sender, RoutedEventArgs e) 
    { 
     HtmlPage.Window.Invoke("showText", "show this text"); 
    } 

我是客戶端編程的新手。感謝您的幫助。

+0

刺在黑暗中:這是否工作? 'HtmlPage.Window.Invoke(「showText」,new object [] {「show this text」});' – McGarnagle

+0

我試過了。它不起作用。我geting相同的錯誤:「未能調用ShowText」。還有其他建議嗎? –

回答

0

我得到了這個工作。問題是JavaScript文件被緩存了。在我添加新方法showText後,我編譯並再次測試它。但JavaScript文件沒有更新,所以我的Silverlight應用程序找不到新的JavaScript方法showText。清除瀏覽器緩存和Silverlight緩存沒有幫助。爲了解決這個問題,我重命名了JavaScript文件並重新編譯了它。這次該方法被參數調用。 我仍然需要弄清楚如何在更改後更新JavaScript文件。我正在構建JavaScript文件作爲dll的資源。

相關問題