[英]Submit data via AJAX in .NET embedded browser
我们有一个设置,其中使用.NET嵌入式浏览器来显示通过将XSLT文件应用于XML文件(使用.NET)而生成的HTML页面。 这将生成使用DocumentText
属性在嵌入式浏览器中显示的HTML。
我要实现的是在onmouseover
上使用AJAX将一些数据发送到.NET组件。 问题是,.NET应用程序指出该URL是about:blank
,这也是手册中有关使用DocumentText
属性的内容:
当您想使用字符串处理工具来操纵WebBrowser控件中显示的HTML页面的内容时,请使用此属性。 您可以使用此属性,例如,从数据库加载页面或使用正则表达式分析页面。 设置此属性后,WebBrowser控件会在加载指定的文本之前自动导航到about:blank URL。 这意味着,当您设置此属性时,将发生Navigating,Navigated和DocumentCompleted事件,并且Url属性的值不再有意义。
那么如何在该组件内部使用AJAX? 我没有要提交的网址...
有人做到了吗? 顺便说一句,我只做JS,不编写.NET。
我的代码不起作用:
<script>
function fnLog(action,rule){
$.ajax({
type: "POST",
//or: url:'about:blank',
//or: url: '',
//or url: 'localhost',
data: "xmlToPost=<cr>"+
" <guiActions>"+
" <log>"+
" <action>"+action+"</action>"+
" <ruleId>"+rule+"</ruleId>"+
"</log>"+
" </guiActions>"+
"</cr>"
});
}
</script>
编辑:我知道window.external.Post
,但这仅在IE中有效,并且与其余代码不同。 .NET开发人员希望坚持一种将数据发送到.NET的方法,这是通过将其发布来完成的,仅在每次mouseover
都发布一个表单并不理想,因此这就是我要研究AJAX
的原因。
您可以尝试导航到其他地方,例如ajax://<cr><guiAction.....
,。NET组件将收到有关此通知,采用新的URL并进行相应的解析,并防止重定向,因此不会进行任何操作实际发生在页面上。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.