从Silverlight调用Javascript函数时,我收到错误“无法调用”该函数

时间:2012-11-21 05:01:48

标签: javascript silverlight

我从Silverlight调用JavaScript函数。我的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");
    }

我是客户端编程的新手。感谢你的帮助。

1 个答案:

答案 0 :(得分:0)

我得到了这个工作。问题是,JavaScript文件被缓存了。在我添加新方法showText之后,我编译了它并再次测试它。但JavaScript文件没有更新,因此我的Silverlight应用程序找不到新的JavaScript方法showText。清除浏览器缓存和Silverlight缓存没有帮助。为了解决这个问题,我重命名了JavaScript文件并重新编译了它。这次使用参数调用该方法。 我仍然需要弄清楚如何在进行更改后更新JavaScript文件。我正在构建JavaScript文件作为dll的资源。