c# webbrowser 如何调用一个js文件里的js方法

DataBox-MDX 2013-08-11 11:45:15
现在有一个网页用webbrowser加载进来,网页html中有一个js文件:
<script type="text/javascript" src="http://...js/modules/myorder.js?_=2.89">
(貌似这个js文件用view source是看不到的,但是用firebug可以看到)
上面一个js文件里有一个方法定义mysubmitAll定义如下:

myGH.myrun(function () {
var myOrder = {
mysubmitAll: function () {
var that = this;
var otherFormDv = $("#otherFormDv");
otherFormDv.append($("#extParamForm").contents());
otherFormDv.append($("#patientInfo").contents().not(":disabled"));
otherFormDv.append($("#reservationReason").contents().not(":disabled"));
that.form.submit()
}
};
},
[GH.modules.autocomplete, GH.modules.datepicker, GH.modules.swfupload, GH.modules.tooltip]);

请问我如何在c# webbrowser中如何用代码动态触发这个mysubmitAll方法?能提供一个完整的语句最好
注:别灌水,有效的解决方案将独自得到80分!!
...全文
412 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
erental 2014-03-12
  • 打赏
  • 举报
回复
路过观察下。。。
jshi123 2013-08-17
  • 打赏
  • 举报
回复
不行吗?那你调试下啊: webBrowser1.Document.InvokeScript("eval", new object[]{@" alert('ok, i am here'); var otherFormDv = $('#otherFormDv'); alert(otherFormV); otherFormDv.append($('#extParamForm').contents()); alert(otherFormDv.html()); otherFormDv.append($('#patientInfo').contents().not(':disabled')); alert(otherFormDv.html()); otherFormDv.append($('#reservationReason').contents().not(':disabled')); alert(otherFormDv.html()); alert($('form')[0].outerHTML); $('form').submit(); "}); 看看有没有弹出提示
DataBox-MDX 2013-08-17
  • 打赏
  • 举报
回复
引用 4 楼 jshi123 的回复:
webBrowser1.Document.InvokeScript("eval", new object[]{@" var otherFormDv = $('#otherFormDv'); otherFormDv.append($('#extParamForm').contents()); otherFormDv.append($('#patientInfo').contents().not(':disabled')); otherFormDv.append($('#reservationReason').contents().not(':disabled')); $('form').submit(); "});
哥们,谢谢了,虽然我没得到最后的答案,哥们可否再问一个问题: http://bbs.csdn.net/topics/390551676 有70分的
DataBox-MDX 2013-08-14
  • 打赏
  • 举报
回复
引用 1 楼 jshi123 的回复:
代码没有贴全吧。myOrder是一个局部变量,只有闭包函数可以访问到它,没有返回的话,外面是得不到的。
其实我只是想执行这段代码: var that = this; var otherFormDv = $("#otherFormDv"); otherFormDv.append($("#extParamForm").contents()); otherFormDv.append($("#patientInfo").contents().not(":disabled")); otherFormDv.append($("#reservationReason").contents().not(":disabled")); that.form.submit() 而且上面提到的对象(#otherFormDv,#extParamForm,#patientInfo,#reservationReason)都在当前打开的webbrowser中的html中有。我可否给webbrowser动态加上面的js代码,然后提交呢?望赐教。得到结果,80分都给你了。
jshi123 2013-08-14
  • 打赏
  • 举报
回复
webBrowser1.Document.InvokeScript("eval", new object[]{@" var otherFormDv = $('#otherFormDv'); otherFormDv.append($('#extParamForm').contents()); otherFormDv.append($('#patientInfo').contents().not(':disabled')); otherFormDv.append($('#reservationReason').contents().not(':disabled')); $('form').submit(); "});
  • 打赏
  • 举报
回复
webbroser 只知道可以获取你看到的信息 还有个模拟点击事件 其他的不知道
jshi123 2013-08-11
  • 打赏
  • 举报
回复
代码没有贴全吧。myOrder是一个局部变量,只有闭包函数可以访问到它,没有返回的话,外面是得不到的。

111,092

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧