在C#使用JScript的技巧

来源:互联网 发布:常见的木马编程技术 16 编辑:程序博客网 时间:2024/05/16 13:56

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Configuration;  
using System.Web;  
using System.Web.Security;  
using System.Web.UI;  
using System.Web.UI.WebControls;  
using System.Web.UI.WebControls.WebParts;  
using System.Web.UI.HtmlControls;  
using System.Web.SessionState;  
using System.Text.RegularExpressions;    
 
/// <summary>  

/// JScript 的摘要说明  

/// 在开发过程中可以用的一些技巧文件  

///本js也是从别的oa中提取来的  

/// </summary>  
namespace School_Monitor.Common
{
   public  class JScript{
       
 
    protected static HttpResponse Response;  
 
    protected static HttpSessionState Session;  
 
    public JScript()  
    {  
    }  
 
    /// <summary>  
    /// 弹出JavaScript小窗口,并转向指定的页面 
    /// </summary>  
    /// <param name="message">弹出信息</param>  
    /// <param name="toURL">专转向的网页</param> 
    public static void AlertAndRedirect(string message, string toURL)  
 
    {  
 
        string js = "<script language=javascript>alert('{0}');window.location.replace('{1}')</script>";  
 
        HttpContext.Current.Response.Write(string.Format(js, message, toURL));  
 
    }  
 
    /// <summary>  
    /// 向客户端发送函数KendoPostBack(eventTarget, eventArgument)  
    /// 服务器端可接收__EVENTTARGET,__EVENTARGUMENT的值 
    /// </summary>
    /// <param name="page">System.Web.UI.Page 一般为this</param>  
    public static void JscriptSender(System.Web.UI.Page page)  
 
    {  
 
 
 
        page.RegisterHiddenField("__EVENTTARGET", "");  
 
        page.RegisterHiddenField("__EVENTARGUMENT", "");  
 
        string s = @"<script language=Javascript>    
      function KendoPostBack(eventTarget, eventArgument)   
 
      {  
 
                var theform = document.forms[0];  
 
                theform.__EVENTTARGET.value = eventTarget;  
 
                theform.__EVENTARGUMENT.value = eventArgument;  
 
                theform.submit();  
 
            }    
</script>";  
 
 
 
        page.RegisterStartupScript("sds", s);  
 
    }  
 
    /// <summary>  
    /// 弹出JavaScript小窗口  
    /// </summary>  
    /// <param name="js">窗口信息</param> 
    public static void Alert(string message) 
    {    
        string js = @"<Script language='JavaScript'>  
 
                    alert('" + message + "');</Script>";  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
    public static void Alert(object message)  
 
    {  
 
        string js = @"<Script language='JavaScript'>  
 
                    alert('{0}');    
 
                  </Script>";  
 
        HttpContext.Current.Response.Write(string.Format(js, message.ToString()));  
 
    }  
 
    /// <summary>  
    /// 确认窗口 如:(是否删除) 
    /// </summary>  
    /// <param name="message"></param>  
    /// <param name="strWinCtrl"></param>  
    public static void RtnRltMsgbox(object message, string strWinCtrl)  
 
    {  
 
        string js = @"<Script language='JavaScript'>  
 
                     strWinCtrl = true;  
 
                     strWinCtrl = if(!confirm('" + message + "'))return false;</Script>";  
 
        HttpContext.Current.Response.Write(string.Format(js, message.ToString()));  
 
    }  
   
    /// <summary>  
    /// 回到历史页面  
    /// </summary>  
    /// <param name="value">-1/1</param> 
    public static void GoHistory(string value)  
 
    {  
 
        string js = @"<Script language='JavaScript'>  
 
                    history.go({'" + value + "'})</Script>";  
 
        HttpContext.Current.Response.Write(string.Format(js, value.ToString()));  
 
    }  
   
    /// <summary>  
    /// 关闭当前窗口
    /// </summary> 
    public static void CloseWindow()  
 
    {  
 
        string js = @"<Script language='JavaScript'>  
 
                    window.close();    
 
                  </Script>";  
 
        HttpContext.Current.Response.Write(js);  
 
        HttpContext.Current.Response.End();  
 
    }  
   
    /// <summary> 
    /// 刷新父窗口 
    /// </summary> 
    public static void RefreshParent()  
 
    {  
 
        string js = @"<Script language='JavaScript'>  
 
                    parent.location.reload();  
 
                  </Script>";  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
    /// <summary>  
    /// 格式化为JS可解释的字符串 
    /// </summary>  
    /// <param name="s"></param>  
    /// <returns></returns>  
    public static string JSStringFormat(string s)  
 
    {  
 
        return s.Replace("/r", "//r").Replace("/n", "//n").Replace("'", "//'").Replace("/"", "///"");  
 
    }  
 
 
    /// <summary>  
    /// 刷新打开窗口
    /// </summary> 
    public static void RefreshOpener()  
 
    {  
 
        string js = @"<Script language='JavaScript'>  
 
                    opener.location.reload();  
 
                  </Script>";  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
   
    /// <summary> 
    /// 打开窗口  
    /// </summary>
    /// <param name="url"></param> 
    public static void OpenWebForm(string url)  
 
    {  
        string js = @"<Script language='JavaScript'>  
 
            //window.open('" + url + @"');  
 
            window.open('" + url + @"','','height=0,width=0,top=0,left=0,location=no,menubar=no,resizable=yes,scrollbars=yes,status=yes,titlebar=no,toolbar=no,directories=no');  
 
            </Script>";  
 
        /*结束*/ 
 
        /*…………………………………………………………………………………………*/ 
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
    public static void OpenWebForm(string url, string name, string future)  
 
    {  
 
        string js = @"<Script language='JavaScript'>  
 
                     window.open('" + url + @"','" + name + @"','" + future + @"')  
 
                  </Script>";  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
    public static void OpenWebForm(string url, string formName)  
 
    {    
        string js = @"<Script language='JavaScript'>  
 
            //window.open('" + url + @"','" + formName + @"');  
 
            window.open('" + url + @"','" + formName + @"','height=0,width=0,top=0,left=0,location=no,menubar=no,resizable=yes,scrollbars=yes,status=yes,titlebar=no,toolbar=no,directories=no');  
 
            </Script>";  
 
        /*结束*/ 
 
        /*…………………………………………………………………………………………*/ 
 
 
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
 
    /// <summary>  
    /// 函数名:OpenWebForm   
    /// 功能描述:打开WEB窗口    
    /// </summary>    
    /// <param name="url">WEB窗口</param>    
    /// <param name="isFullScreen">是否全屏幕</param>    
    public static void OpenWebForm(string url, bool isFullScreen)  
 
    {  
 
        string js = @"<Script language='JavaScript'>";  
 
        if (isFullScreen)  
 
        {  
 
            js += "var iWidth = 0;";  
 
            js += "var iHeight = 0;";  
 
            js += "iWidth=window.screen.availWidth-10;";  
 
            js += "iHeight=window.screen.availHeight-50;";  
 
            js += "var szFeatures ='width=' + iWidth + ',height=' + iHeight + ',top=0,left=0,location=no,menubar=no,resizable=yes,scrollbars=yes,status=yes,titlebar=no,toolbar=no,directories=no';";  
 
            js += "window.open('" + url + @"','',szFeatures);";  
 
        }  
 
        else 
 
        {  
 
            js += "window.open('" + url + @"','','height=0,width=0,top=0,left=0,location=no,menubar=no,resizable=yes,scrollbars=yes,status=yes,titlebar=no,toolbar=no,directories=no');";  
 
        }  
 
        js += "</Script>";  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
    /// <summary>  
    /// 转向Url制定的页面
    /// </summary>  
    /// <param name="url"></param>
    public static void JavaScriptLocationHref(string url)  
 
    {  
 
        string js = @"<Script language='JavaScript'>  
 
                    window.location.replace('{0}');  
 
                  </Script>";  
 
        js = string.Format(js, url);  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
    /// <summary>  
    /// 指定的框架页面转换 
    /// </summary>  
    /// <param name="FrameName"></param>
    /// <param name="url"></param>
    public static void JavaScriptFrameHref(string FrameName, string url)  
 
    {  
 
        string js = @"<Script language='JavaScript'>  
 
                      
 
                    @obj.location.replace(""{0}"");  
 
                  </Script>";  
 
        js = js.Replace("@obj", FrameName);  
 
        js = string.Format(js, url);  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
    /// <summary>  
    ///重置页面  
    /// </summary>  
    public static void JavaScriptResetPage(string strRows)  
 
    {  
 
        string js = @"<Script language='JavaScript'>  
 
                    window.parent.CenterFrame.rows='" + strRows + "';</Script>";  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
    /// <summary>
    /// 函数名:JavaScriptSetCookie  
    /// 功能描述:客户端方法设置Cookie   
    /// </summary>    
    /// <param name="strName">Cookie名</param>
    /// <param name="strValue">Cookie值</param>
    public static void JavaScriptSetCookie(string strName, string strValue)  
 
    {  
 
        string js = @"<script language=Javascript>  
 
            var the_cookie = '" + strName + "=" + strValue + @"' 
 
            var dateexpire = 'Tuesday, 01-Dec-2020 12:00:00 GMT';  
 
            //document.cookie = the_cookie;//写入Cookie<BR>} <BR>  
 
            document.cookie = the_cookie + '; expires='+dateexpire;           
 
            </script>";  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
    /// <summary>
    /// 函数名:GotoParentWindow  
    /// 功能描述:返回父窗口 
    /// </summary>  
    /// <param name="parentWindowUrl">父窗口</param>   
    public static void GotoParentWindow(string parentWindowUrl)  
 
    {  
 
        string js = @"<Script language='JavaScript'>  
 
                    this.parent.location.replace('" + parentWindowUrl + "');</Script>";  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
 
 
    /// <summary>
    /// 函数名:ReplaceParentWindow 
    /// 功能描述:替换父窗口     
    /// </summary>    
    /// <param name="parentWindowUrl">父窗口</param>  
    /// <param name="caption">窗口提示</param>  
    /// <param name="future">窗口特征参数</param> 
    public static void ReplaceParentWindow(string parentWindowUrl, string caption, string future)  
 
    {  
 
        string js = "";  
 
        if (future != null && future.Trim() != "")  
 
        {  
 
            js = @"<script language=javascript>this.parent.location.replace('" + parentWindowUrl + "','" + caption + "','" + future + "');</script>";  
 
        }  
 
        else 
 
        {  
 
            js = @"<script language=javascript>var iWidth = 0 ;var iHeight = 0 ;iWidth=window.screen.availWidth-10;iHeight=window.screen.availHeight-50;  
 
                            var szFeatures = 'dialogWidth:'+iWidth+';dialogHeight:'+iHeight+';dialogLeft:0px;dialogTop:0px;center:yes;help=no;resizable:on;status:on;scroll=yes';this.parent.location.replace('" + parentWindowUrl + "','" + caption + "',szFeatures);</script>";  
 
        }  
 
 
 
        HttpContext.Current.Response.Write(js);  
 
    }  
   
    /// <summary>
    /// 函数名:ReplaceOpenerWindow   
    /// 功能描述:替换当前窗体的打开窗口  
    /// </summary>  
    /// <param name="openerWindowUrl">当前窗体的打开窗口</param> 
    public static void ReplaceOpenerWindow(string openerWindowUrl)  
 
    {  
 
        string js = @"<Script language='JavaScript'>  
 
                    window.opener.location.replace('" + openerWindowUrl + "');</Script>";  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
 
    /// <summary>       
    /// 函数名:ReplaceOpenerParentWindow  
    /// 功能描述:替换当前窗体的打开窗口的父窗口    
    /// </summary>  
    /// <param name="openerWindowUrl">当前窗体的打开窗口的父窗口</param>
    public static void ReplaceOpenerParentFrame(string frameName, string frameWindowUrl)  
 
    {  
 
        string js = @"<Script language='JavaScript'>  
 
                    window.opener.parent." + frameName + ".location.replace('" + frameWindowUrl + "');</Script>";  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
  
    /// <summary>       
    /// 函数名:ReplaceOpenerParentWindow
    /// 功能描述:替换当前窗体的打开窗口的父窗口       
    /// </summary>  
    /// <param name="openerWindowUrl">当前窗体的打开窗口的父窗口</param>     
    public static void ReplaceOpenerParentWindow(string openerParentWindowUrl)  
 
    {  
 
        string js = @"<Script language='JavaScript'>  
 
                    window.opener.parent.location.replace('" + openerParentWindowUrl + "');</Script>";  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
    /// <summary>       
    /// 函数名:CloseParentWindow    
    /// 功能描述:关闭窗口   
    /// </summary>  
    public static void CloseParentWindow()  
 
    {  
 
        string js = @"<Script language='JavaScript'>  
 
                    window.parent.close();    
 
                  </Script>";  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
    public static void CloseOpenerWindow()  
 
    {  
 
        string js = @"<Script language='JavaScript'>  
 
                    window.opener.close();    
 
                  </Script>";  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
   
    /// <summary>  
 
    /// 函数名:ShowModalDialogJavascript     
 
    /// 功能描述:返回打开模式窗口的脚本 
    /// </summary>  
    /// <param name="webFormUrl"></param>
    /// <returns></returns>  
    public static string ShowModalDialogJavascript(string webFormUrl)  
 
    {  
 
        string js = @"<script language=javascript>  
 
                            var iWidth = 0 ;  
 
                            var iHeight = 0 ;  
 
                            iWidth=window.screen.availWidth-10;  
 
                            iHeight=window.screen.availHeight-50;  
 
                            var szFeatures = 'dialogWidth:'+iWidth+';dialogHeight:'+iHeight+';dialogLeft:0px;dialogTop:0px;center:yes;help=no;resizable:on;status:on;scroll=yes';  
 
                            showModalDialog('" + webFormUrl + "','',szFeatures);</script>";  
 
        return js;  
 
    }  
 
    public static string ShowModalDialogJavascript(string webFormUrl, string features)  
 
    {  
 
        string js = @"<script language=javascript>                              
 
                            showModalDialog('" + webFormUrl + "','','" + features + "');</script>";  
 
        return js;  
 
    }  
  
    /// <summary>  
 
    /// 函数名:ShowModalDialogWindow     
 
    /// 功能描述:打开模式窗口 
    /// </summary>  
    /// <param name="webFormUrl"></param>  
    /// <returns></returns>  
    public static void ShowModalDialogWindow(string webFormUrl)  
 
    {  
 
        string js = ShowModalDialogJavascript(webFormUrl);  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
    public static void ShowModalDialogWindow(string webFormUrl, string features)  
 
    {  
 
        string js = ShowModalDialogJavascript(webFormUrl, features);  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
    public static void ShowModalDialogWindow(string webFormUrl, int width, int height, int top, int left)  
 
    {  
 
        string features = "dialogWidth:" + width.ToString() + "px" 
 
            + ";dialogHeight:" + height.ToString() + "px" 
 
            + ";dialogLeft:" + left.ToString() + "px" 
 
            + ";dialogTop:" + top.ToString() + "px" 
 
            + ";center:yes;help=no;resizable:no;status:no;scroll=no";  
 
        ShowModalDialogWindow(webFormUrl, features);  
 
    }  
 
    public static void SetHtmlElementValue(string formName, string elementName, string elementValue)  
 
    {  
 
        string js = @"<Script language='JavaScript'>if(document." + formName + "." + elementName + "!=null){document." + formName + "." + elementName + ".value =" + elementValue + ";}</Script>";  
 
        HttpContext.Current.Response.Write(js);  
 
    }  
 
    /// <summary>  
    /// 判断Session中某键值是否存在,如果不存在,输出提示信息  
    /// 并且转向相应页面  
    /// </summary>  
    /// <param name="SessionName">Session中键名称</param>  
    /// <param name="Message">提示信息</param>  
    /// <param name="RedirectUrl">要转向的页面</param>  
    public static void CheckSession(string SessionName, string Message, string RedirectUrl)  
 
    {  
 
        Session = HttpContext.Current.Session;  
 
        Response = HttpContext.Current.Response;  
 
        if (Session[SessionName] == null)  
 
        {  
 
            WriteMessage(Message, false, false);  
 
            string js = "top.document.location='" + RedirectUrl + "';";  
 
            WriteJavaScript(js); ;  
 
        }  
 
    }  
   
    /// <summary>  
 
    /// 用Javascript的Window.alert()方法输出提示信息  
    /// </summary>  
    /// <param name="strMsg">要输出的信息</param> 
    /// <param name="Back">输出信息后是否要history.back()</param>  
    /// <param name="End">输出信息后是否要Response.end()</param> 
    public static void WriteMessage(string strMsg, bool Back, bool End)   
    {  
 
        Response = HttpContext.Current.Response;  
 
        //将单引号替换,防止javascript出错  
 
        strMsg = strMsg.Replace("'", "“");  
 
        //将回车换行符去掉,防止javascript出错  
 
        strMsg = strMsg.Replace("/r/n", "");  
 
        Response.Write("<script language=javascript>alert('" + strMsg + "');</script>");  
 
        if (Back)  
 
            Response.Write("<script language=javascript>history.back();</script>");  
 
        if (End)  
 
            Response.End();  
 
    }  
 
    /// <summary>  
    /// 以Response.Write()方式输出一条JavaScript语句  
    /// </summary>  
    /// <param name="strJavaScript">要输出的JavaScript语句</param>  
    public static void WriteJavaScript(string strJavaScript)  
 
    {  
 
        Response = HttpContext.Current.Response;  
 
        Response.Write("<script language=javascript>" + strJavaScript + "</script>");  
 
    }  
 
    ///<summary>  
    ///Redirect转向strUrl网址 
    ///</summary>  
    ///<param name="strUrl">要转向的网址</param> 
    public static void RedirectToUrl(string strUrl)  
 
    {  
 
        Response = HttpContext.Current.Response;  
 
        Response.Write("<script language=javascript>location.href='"+strUrl+"';</script>");  
 
        Response.End();  
 
    }  
   }
}

原创粉丝点击