• Ajax中调用javaScript


    原文地址:http://www.cnblogs.com/carekee/articles/1740124.html

    因为用的是Ajax的  ScriptManager + UpdatePanel控件

    所以调用Response.Write(),Page.RegisterStartScript()等方法,就不行了

    需要调用Ajax本身的ScriptManager.RegisterStartupScript()方法;

    具体格式为:

    System.Web.UI.ScriptManager.RegisterStartupScript(Control control, Type type, string key,string script, bool addScriptTags)

    调用方式为:

    System.Web.UI.ScriptManager.RegisterStartupScript(this,this.GetType(),"KEY","alert('ss')",true);

     

    现在项目中用到的列出几个,以后可能用到的:

    AjaxFunc.cs

     

    /// <summary>
    /// MSG 的摘要说明
    /// </summary>
    public static class AjaxFunc
    {
        /// <summary>
        
    /// 弹出对话框
        
    /// </summary>
        
    /// <param name="ps"></param>
        
    /// <param name="strName"></param>
        
    /// <param name="strMsg"></param>
        public static void MessageBox(Page ps, string strName, string strMsg)
        {
            ScriptManager.RegisterClientScriptBlock(ps, ps.GetType(), strName, "alert('" + strMsg + "')"true);
        }

        /// <summary>
        
    /// 加载网页
        
    /// </summary>
        
    /// <param name="ps"></param>
        
    /// <param name="strName"></param>
        
    /// <param name="strUrl"></param>
        public static void OpenUrl(Page ps,string strName,string strUrl)
        {
            System.Web.UI.ScriptManager.RegisterStartupScript(ps, ps.GetType(), strName, "window.location.href='" + strUrl + "';"true);
        }

        /// <summary>
        
    /// 弹出网页
        
    /// </summary>
        
    /// <param name="ps"></param>
        
    /// <param name="strName"></param>
        
    /// <param name="strUrl"></param>
        public static void OpenModelUrl(Page ps,string strName,string strUrl)
        {
            //System.Web.UI.ScriptManager.RegisterStartupScript(ps, ps.GetType(), strName, "window.showModalDialog ('" + strUrl + "', 'newwindow', 'height=100, width=400, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no');", true);
            System.Web.UI.ScriptManager.RegisterStartupScript(ps, ps.GetType(), strName, "window.showModalDialog ('" + strUrl + "', 'newwindow', 'dialogHeight:650px, dialogWidth:300px, toolbar=no, menubar=no, resizable=no, location=no, status=no');"true);
        }

        /// <summary>
        
    /// 弹出网页
        
    /// </summary>
        
    /// <param name="ps"></param>
        
    /// <param name="strName"></param>
        
    /// <param name="strUrl"></param>
        public static void OpenModelUrl(Page ps, string strName, string strUrl,int width, int height)
        {
            //System.Web.UI.ScriptManager.RegisterStartupScript(ps, ps.GetType(), strName, "window.showModalDialog ('" + strUrl + "', 'newwindow', 'height=100, width=400, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no');", true);
            System.Web.UI.ScriptManager.RegisterStartupScript(ps, ps.GetType(), strName, "window.showModalDialog ('" + strUrl + "', 'newwindow', 'dialogHeight:" + height.ToString() + "px; dialogWidth:" + width.ToString() + "px; toolbar:no; resizable:no; location:no; status:no;help:no;scroll:no;');"true);
        }

        /// <summary>
        
    /// 弹出网页+状态栏
        
    /// </summary>
        
    /// <param name="ps"></param>
        
    /// <param name="strName"></param>
        
    /// <param name="strUrl"></param>
        public static void OpenModelUrl_EX(Page ps, string strName, string strUrl, int width, int height)
        {
            //System.Web.UI.ScriptManager.RegisterStartupScript(ps, ps.GetType(), strName, "window.showModalDialog ('" + strUrl + "', 'newwindow', 'height=100, width=400, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no');", true);
            System.Web.UI.ScriptManager.RegisterStartupScript(ps, ps.GetType(), strName, "window.showModalDialog ('" + strUrl + "', 'newwindow', 'dialogHeight:" + height.ToString() + "px; dialogWidth:" + width.ToString() + "px; toolbar:no; resizable:no; location:no; status:yes;help:no;scroll:no;');"true);
        }

        /// <summary>
        
    /// 弹出网页
        
    /// </summary>
        
    /// <param name="ps"></param>
        
    /// <param name="strName"></param>
        
    /// <param name="strUrl"></param>
        public static void OpenModelUrl_DW(Page ps, string strName, string strUrl)
        {
            //System.Web.UI.ScriptManager.RegisterStartupScript(ps, ps.GetType(), strName, "window.showModalDialog ('" + strUrl + "', 'newwindow', 'height=100, width=400, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no');", true);
            System.Web.UI.ScriptManager.RegisterStartupScript(ps, ps.GetType(), strName, "window.showModalDialog ('" + strUrl + "', 'newwindow', 'dialogHeight:700px, dialogWidth:300px, toolbar=no, menubar=no, resizable=no, location=no, status=no');"true);
        }
        /// <summary>
        
    /// 关闭模式网页
        
    /// </summary>
        
    /// <param name="ps"></param>
       public static void CloseModalUrl(Page ps)
        {
            System.Web.UI.ScriptManager.RegisterStartupScript(ps, ps.GetType(), """window.close();"true);
        }

        /// <summary>
        
    /// 使用AJAX操作Response.Write
        
    /// </summary>
        
    /// <param name="control"></param>
        
    /// <param name="type"></param>
        
    /// <param name="key"></param>
        
    /// <param name="script"></param>
        
    /// <param name="addScriptTags"></param>
       public static void ResponseWrite(Control control, Type type, string script, bool addScriptTags)
        {
            System.Web.UI.ScriptManager.RegisterStartupScript(control, type, "NULL", script, addScriptTags);
        }

     

    方法的调用:

    AjaxFunc.ResponseWrite(thisthis.GetType(), "alert('请登录后再使用该系统!');parent.document.location.href('../default.aspx');"true);

    JS解释:

    alert('请登录后再使用该系统!');弹出消息框

    parent.document.location.href('../default.aspx');打开指定页

     

    AjaxFunc.MessageBox(this"Error""输入旧密码不能为空!");

    JS解释:弹出消息框

     

    AjaxFunc.OpenModelUrl_EX(this.Page, """ShowCurveLine.aspx"840550);

    JS解释:打开模式页面

     

    AjaxFunc.OpenModelUrl_EX(this.Page, """ShowCurveLine.aspx"840550);

    JS解释:打开非模式页面
  • 相关阅读:
    ReentrantLock实现原理分析
    《亿级流量网站架构核心技术》概要
    Java日志框架:logback详解
    40个Java多线程问题总结
    使用Jenkins部署Spring Boot项目
    spring security 实践 + 源码分析
    Spring Boot使用过滤器和拦截器分别实现REST接口简易安全认证
    Spring Boot+redis存储session,满足集群部署、分布式系统的session共享
    maven-assembly-plugin的使用
    使用maven构建多模块项目,分块开发
  • 原文地址:https://www.cnblogs.com/xidongs/p/2304684.html
Copyright © 2020-2023  润新知