zoukankan      html  css  js  c++  java
  • Silverlight和javascript的相互调用

    1.javascript调用silverlight

    首先在silverlight的C#代码中定义一个public方法

            /// <summary>
            /// 地图查询
            /// </summary>
            /// <param name="keyword"></param>
            [ScriptableMember]
            public void QuerySQL(string keyword)
            {
                myMapTools.QuerySQL(keyword);
            }
     
    并且该类的头部 加属性 

    [ScriptableType()]

     
    在构造函数中加入

    HtmlPage.RegisterScriptableObject("Map", this);

     

    最后 在js代码中调用

            //查询
           var slcontrol=null;
           function QuerySQL(keyword) {
               if (slcontrol == null) {
                   var slcontrol = document.getElementById('silverlightControl');
               }
               slcontrol.content.Map.QuerySQL(keyword);
           }
     
    slcontrol.content.Map中的Map即是 HtmlPage.RegisterScriptableObject("Map", this);注册的Map,我们取
    自己想要的名字就行了.
    'silverlightControl' 为silverlight的<object>标签的ID

    2.silverlight调用javascript

    //调用js
    HtmlPage.Window.Invoke("test", "Invoke");
    test 为js函数
     

    silverlight修改dom元素属性

    比如页面中有一个文本框: <input type="text" id="txtTarget" name="txtTarget" />

     
    HtmlPage.Document.GetElementById("txtTarget").SetAttribute("value", "Silverlight");
    HtmlPage.Document.GetElementById("txtTarget").SetProperty("value", "Silverlight");
    Powered By D&J (URL:http://www.cnblogs.com/Areas/)
  • 相关阅读:
    调试
    node笔记汇总
    移动端布局
    css 易错点总结
    Angular笔记
    CANVAS笔记
    http笔记汇总
    各种环境搭建 软件安装等等 参考网址收录
    js中同步异步,任务队列
    node.js之fs模块
  • 原文地址:https://www.cnblogs.com/Areas/p/2154613.html
Copyright © 2011-2022 走看看