zoukankan      html  css  js  c++  java
  • Asp.net服务器端与客户端之间的相互调用

        一直以来ASP.NET的服务器端与客户端之间的脚本调用困扰好久,到目前都无法实现理想的调用方法.规纳总结一下.
      1.ASP.NET服务器端调用客户端脚本的方法.
           <script language="javascript">
        function bclick()
        {   
            document.getElementById("div10").style.display='none';
        }  
        </script>
    调用方法:
            Button1.Attributes.Add("onclick", "bclick()");
      这种是postback,所以执行后的div10还是无法隐藏起来的.就这个问题一直困扰我很久,有高手的知道的话,可以指点我一下吧!非常感谢!

       2.ASP.NET服务器端调用客户端脚本的方法.
     ScriptManager.RegisterStartupScript(this.Page, typeof(string), "addV", "document.getElementById('div10').style.display='none';", true);
           附:
           Page.RegisterStartupScript在Web窗体的结尾处(在 </form> 标识之前)发送脚本块。
    RegisterStartupScript() 用于添加要在加载页面后运行的脚本块,通过这种方法添加的脚本块位于 Web 窗体的结尾处,因为必须在脚本运行前定义脚本要修改的 HTML 元素。也就是说,如果您要使用客户端脚本将焦点设置到文本框,必须确保文本框的 HTML 标记位于设置该文本框的焦点的脚本之前
           Page.RegisterClientScriptBlock方法:
    客户端脚本刚好在Page对象的<form runat=”server”>元素的开始标志后发出。
    RegisterClientScriptBlock() 方法用于为响应客户端事件而执行的脚本代码。通过此方法发送的脚本块位于 Web 页面的开始处,因为这种方法不要求将脚本块置于所有 HTML 元素之后,即它一般不使用文档内自定义的控件

         3.客户端调用服务端方法.
        a. 前台:<%# GetScore(Container.DataItem, "score")%>
         后台:
                 public string GetScore(object container, string score)
        {
            string _score = DataBinder.GetPropertyValue(container, score).ToString();
            int scoresum = Convert.ToInt32(_score) + 10;
            return Convert.ToString(scoresum);
        }
         b.利用AjaxPro.Net,Atheme.net等Ajax框架处理.在客户端调用服务器端方法时,这些框架的确很方便.

       4.利用Asp.net Ajax进行处理.其中的特效和功能的确让处理不刷新的效果很方便,提高效率.

       
  • 相关阅读:
    冒泡排序
    题6 字典转数组 修改 大美女
    题5数组 排序 修改 字典以字符串输出
    题4数组 删除 排序
    数组字典结合删除排序 描述器
    盘点世界上最怪异的编程语言: 这6种编程语言的出现,只是为了好玩?
    Linux“四”种软件包都安排上了!详细安装过程曝光
    又一名程序员被判刑了!百度92年程序员改当“审核员”,编写脚本违规“开绿灯”
    C++的三种继承方式:public,protected,private
    Linux下查询进程占用内存的5种方式!还有谁不会?
  • 原文地址:https://www.cnblogs.com/witer666/p/944428.html
Copyright © 2011-2022 走看看