这个是在js中获取ip和pcname的方法,现在将它放在flex启动模板中即可。看代码: 
 复制代码 代码如下:   function getClientPcName()  {  //"请将您浏览器Internet选项中的“对没有标记为安全的ActiveX控件进行初始化和脚本运行”设置为“启用”!nn然后刷新本页登陆!"  var WshShellPcName = new ActiveXObject("WScript.Network");  var ComputerName = WshShellPcName.ComputerName ;  return ComputerName;  }  function getClientIp()  {  var WshShellIp = new ActiveXObject("rcbdyctl.Setting");  var ip = WshShellIp.GetIPAddress;  return ip;  } 
    这段代码放到html模板中, 
     记住是模板不是bin-debug,原因大家都比较清楚哈 
  flex前台代码 
 复制代码 代码如下:   <?xml version="1.0" encoding="utf-8"?>  <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"  xmlns:s="library://ns.adobe.com/flex/spark"  xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:supportClasses="com.esri.ags.skins.supportClasses.*" minWidth="955" minHeight="600" creationComplete="init()">  <fx:Script>  <![CDATA[  import mx.controls.Alert;  public function init():void  {  var strPCName:String = ExternalInterface.call("getClientPcName");  var strPCID = ExternalInterface.call("getClientIp");  mx.controls.Alert.show(strPCName+" "+strPCID);  }  ]]>  </fx:Script>  <s:layout>  <supportClasses:AttachmentLayout/>  </s:layout>  <fx:Declarations>  <!-- 将非可视元素(例如服务、值对象)放在此处 --> 
  </fx:Declarations>  <mx:DataGrid x="186" y="173">  <mx:columns>  <mx:DataGridColumn headerText="列 1" dataField="col1"/>  <mx:DataGridColumn headerText="列 2" dataField="col2"/>  <mx:DataGridColumn headerText="列 3" dataField="col3"/>  </mx:columns>  </mx:DataGrid>  </s:Application> 
    ExternalInterface实现js和as之间的通信  这个方法只能在IE下实现,并且还得设置IE安全级别 
     运行结果如下:
                           (编辑:滁州站长网) 
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! 
                     |