Çan*_*Çan 5 javascript c# cefsharp
我正在使用 CefSharp 和从 html 文件加载的 HTML 编辑器。我得到了 javascript 代码来获取 html 编辑器的内容:
var markupStr = $('#summernote').summernote('code');
Run Code Online (Sandbox Code Playgroud)
我需要markupStr在我的 C# 应用程序中返回。我目前拥有的:
var script = "$('#summernote').summernote('code');";
var result = ChromiumWebBrowser.GetMainFrame().EvaluateScriptAsync(script).Result.Message;
Run Code Online (Sandbox Code Playgroud)
我可以毫不费力地在 CefSharp 中执行 JavaScript,但是,如何检索markupStr或其设置的值$('#summernote').summernote('code');?
我们假设您的脚本变量如下所示(或类似这样):
var myScript = @"(function () {
return $('#summernote').summernote('code').val();
})();";
Run Code Online (Sandbox Code Playgroud)
返回值类型是 是什么意思string?
然后你做一个简单的操作
var result = await myBrowserVariable.GetMainFrame().EvaluateScriptAsync(myScript)
.ContinueWith(t =>
{
var result = t.Result;
return (string)result;
});
Run Code Online (Sandbox Code Playgroud)
现在“result”变量包含myScriptjavascript 方法执行的结果。另外,请不要忘记添加空检查(因为t.Result可以为空)并EvaluateScriptAsync仅在当前帧已加载时调用方法。