webBrowser1.InvokeScript 中的错误

本文关键字:错误 InvokeScript webBrowser1 | 更新日期: 2023-09-27 18:32:10

我正在加载一个在WPF的WebBrowser控件中具有TinyMCE编辑器的html网页。您可以在下面的屏幕截图中得到这个想法:输出快照

为了访问在TinyMCE中以原始html格式键入的文本,我在html页面中编写了这个javascript函数:

 function getContent() {
    return tinyMCE.get('elm1').getContent();
 }

我在WPF按钮单击上调用此函数,如下所示:

    string editHtml = this.webBrowser1.InvokeScript("getContent").ToString();

editHtml根据需要抓取在TinyMCE中输入的文本的html。现在我想通过 C# 代码在网页中设置 tinyMCE 的 html。

为此,我在 html 页面上编写了 javascript 函数:

function setContent(strcontent) {
    return tinyMCE.get('elm1').setContent(strcontent);
}

我尝试在 WPF 按钮单击上调用此函数,如下所示:

string setHtml = this.webBrowser1.InvokeScript("setContent('tempinfo')").ToString();

但是现在我得到一个错误如下:错误快照

请注意 1rst 图中 WebBrowser 控件中 tinymce 下方的小按钮。它调用相同的 setContent(),如下所示:

<input type="button" onmousedown="setContent('tempinfo')" />

这会根据需要将 Tinymce 内容设置为文本:tempinfo 。那么,为什么通过 WPF 按钮单击调用时会出现错误呢?

webBrowser1.InvokeScript 中的错误

上面代码中的第一个错误是 InvokeScript 只接受方法名称 - 没有括号:

string setHtml = this.webBrowser1.InvokeScript("setContent").ToString();

接下来,我应该使用

WebBrowser.InvokeScript Method (String, Object) 

看这里

所以我的电话现在看起来像这样:

this.webBrowser1.InvokeScript("setContent","Just done").ToString();