我正在使用 EOWEBROWSER 发送一些数据并取回数据。这是我在后端使用的C#
代码:
void WebView_JSExtInvoke(object sender, JSExtInvokeArgs e)
{
switch (e.FunctionName)
{
case "applicationHeartbeat":
heartBeats.Enqueue("Heart beat received at: " + DateTime.Now);
heartBeatCount++;
string js = @"var span = document.getElementById('beatSpan');
if(span !== null){
span.parentNode.removeChild(span);
}
var counter = 1;
span = document.createElement('span');
span.setAttribute('id', 'beatSpan');
span.innerHTML = '" + heartBeatCount + @" Heart Beats.<br /> Last heart beat receieved ';
var childSpan = document.createElement('span');
childSpan.setAttribute('id', 'count');
span.appendChild(childSpan);
if(document.getElementsByTagName('div').length > 0){
document.getElementsByTagName('div')[0].appendChild(span)
}
else{
document.body.appendChild(span);
}
if(timer !== null) clearInterval(timer);
var timer = setInterval(function(){document.getElementById('count').innerHTML = ++counter + ' sec ago'}, 1000);";
m_CurPage.WebView.EvalScript(js);
break;
case "notifyErrorInfo":
m_CurPage.WebView.EvalScript("alert('"+ e.Arguments[0] + "')");
break;
case "notifyFlashingCompleted":
m_CurPage.WebView.EvalScript("alert('Flashing Completed notification received')");
break;
}
}
在前端,我正在使用javascript。这就是我调用eoWebBrowser
的方式:
heartbeatInterval = setInterval(function() {
window.eval(eoWebBrowser.extInvoke("applicationHeartbeat", {}));
},5000)
此javascript
函数将帮助我将其称为C# function
。我还可以在前端网页上看到结果。现在,我正在尝试在javascript端创建一个日志文件,该函数必须具有以下详细信息:
c#
发送的任何内容追加到该文本文件c#
端发送的所有数据完成页面加载后,必须创建文本,并且来自c# eobrowser
的结果必须附加到JavaScript
创建的文本文件中。我只使用纯JavaScript,没有jquery或angular框架。