qq_21580549 2015-05-29 05:55 采纳率: 0%
浏览 3713

关于C#webBrowser 无法获取js元素的问题

生成一个百度HTML如下,并窗口创建的时候执行

 <!DOCTYPE html>
  <html>
  <head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <style type="text/css">
  body, html,#allmap {width: 100%;height: 100%;overflow: hidden;margin:0;}
  #l-map{height:100%;width:78%;float:left;border-right:2px solid #bcbcbc;}
  #r-result{height:100%;width:20%;float:left;}
  </style>
  <script type="text/javascript" src="http://api.map.baidu.com/api?v=1.4"></script>
  <title>百度地图的Hello, World</title>
  </head>
  <body>
  <div id="allmap"></div>
  </body>
  </html>
  <script type="text/javascript">
 var map = new BMap.Map("allmap");            // 创建Map实例
var point = new BMap.Point(116.404, 39.915);    // 创建点坐标
map.centerAndZoom(point,15);                     // 初始化地图,设置中心点坐标和地图级别。
map.enableScrollWheelZoom();                            //启用滚轮放大缩小

//单击获取点击的经纬度
map.addEventListener("click",function(e){
 document.getElementById("mouselng").innerHTML=e.point.lng;  
 document.getElementById("mouselat").innerHTML=e.point.lat; 
    //alert(e.point.lng + "," + e.point.lat); //弹出消息显示坐标是可以的
});

 </script>

现在通过C#webBrowser控件


              string tag_lng = webBrowser.Document.GetElementById("mouselng").InnerText;
               string tag_lat = webBrowser.Document.GetElementById("mouselat").InnerText;  想获取 e.point.lng和e.point.lat

但是老是显示innerhtml值为空,而且值也取不出来是为什么呢?

  • 写回答

3条回答 默认 最新

  • oyljerry 2015-05-29 06:02
    关注

    是不是页面是异步加载的,你取的时候,页面还没ready

    评论

报告相同问题?

悬赏问题

  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题