I will share some of the things I discovered while sorting out a set of OA. Hope it's useful to everyone! :)
using System;
using System.Web;
using System.Web.UI.HtmlControls;
using System.Web.UI;
namespace Web.JScript
{
/// <summary>
/// Provides a method for outputting client-side code to the page to implement special functions.
/// </summary>
/// <remarks>
/// </remarks>
public class JScript
{
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>
/// Send the function KendoPostBack(eventTarget, eventArgument) to the client
/// The server can receive the values of __EVENTTARGET, __EVENTARGUMENT
/// </summary>
/// <param name="page">System.Web.UI.Page is usually 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>
/// Pop up a small JavaScript window
/// </summary>
/// <param name="js">Window information</param>
public static void Alert(string message)
{
message = StringUtil.DeleteUnVisibleChar(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()));
}
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>
/// Return to the history page
/// </summary>
/// <param name="value">-1/1</param>
public static void GoHistory(int value)
{
string js=@"<Script language='JavaScript'>
history.go({0});
</Script>";
HttpContext.Current.Response.Write(string.Format(js,value));
}
/// <summary>
/// Close the current window
/// </summary>
public static void CloseWindow()
{
string js=@"<Script language='JavaScript'>
window.close();
</Script>";
HttpContext.Current.Response.Write(js);
HttpContext.Current.Response.End();
}
/// <summary>
/// Refresh the parent window
/// </summary>
public static void RefreshParent()
{
string js=@"<Script language='JavaScript'>
parent.location.reload();
</Script>";
HttpContext.Current.Response.Write(js);
}
/// <summary>
/// Formatted into JS interpretable string
/// </summary>
/// <param name="s"></param>
/// <returns></returns>
public static string JSStringFormat(string s)
{
return s.Replace( "r"," \r").Replace("n","\n").Replace("'","\'").Replace(""" ,"\ "");
}
/// <summary>
/// Refresh the open window
/// </summary>
public static void RefreshOpener()
{
string js=@"<Script language='JavaScript'>
opener.location.reload();
</Script>";
HttpContext.Current.Response.Write(js);
}
/// <summary>
/// Open window
/// </summary>
/// <param name="url"></param>
public static void OpenWebForm(string url)
{
/*……………………………………………………………………………………*/
/*Purpose of modification: Remove the ie menu from the new page. . . */
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>";
/*Finish*/
/*……………………………………………………………………………………*/
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)
{
/*……………………………………………………………………………………*/
/*Purpose of modification: Remove the ie menu from the new page. . . */
/*Comment content: */
/*start*/
string js=@"<Script language='JavaScript'>
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>";
/*Finish*/
/*…………………………………………………………………………………………………………*/
HttpContext.Current.Response.Write(js);
}
/// <summary>
/// Function name: OpenWebForm
/// Function description: Open WEB window
/// </summary>
/// <param name="url">WEB window</param>
/// <param name="isFullScreen">Whether it is full screen</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>
/// Go to the page specified by 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>
/// Specified frame page conversion
/// </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>
///Reset page
/// </summary>
public static void JavaScriptResetPage(string strRows)
{
string js=@"<Script language='JavaScript'>
window.parent.CenterFrame.rows='"+strRows+"';</Script>";
HttpContext.Current.Response.Write(js);
}
/// <summary>
/// Function name: JavaScriptSetCookie
/// Function description: Client method sets Cookie
/// </summary>
/// <param name="strName">Cookie name</param>
/// <param name="strValue">Cookie value</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;//Write Cookie<BR>} <BR>
document.cookie = the_cookie + '; expires='+dateexpire;
</script>";
HttpContext.Current.Response.Write(js);
}
/// <summary>
/// Function name: GotoParentWindow
/// Function description: Return to the parent window
/// </summary>
/// <param name="parentWindowUrl">Parent window</param>
public static void GotoParentWindow(string parentWindowUrl)
{
string js=@"<Script language='JavaScript'>
this.parent.location.replace('"+parentWindowUrl+"');</Script>";
HttpContext.Current.Response.Write(js);
}
/// <summary>
/// Function name:ReplaceParentWindow
/// Function description: Replace the parent window
/// </summary>
/// <param name="parentWindowUrl">Parent window</param>
/// <param name="caption">Window prompt</param>
/// <param name="future">Window feature parameters</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>
/// Function name:ReplaceOpenerWindow
/// Function description: Replace the open window of the current form
/// </summary>
/// <param name="openerWindowUrl">The open window of the current form</param>
public static void ReplaceOpenerWindow(string openerWindowUrl)
{
string js=@"<Script language='JavaScript'>
window.opener.location.replace('"+openerWindowUrl+"');</Script>";
HttpContext.Current.Response.Write(js);
}
/// <summary>
/// Function name:ReplaceOpenerParentWindow
/// Function description: Replace the parent window of the open window of the current form
/// </summary>
/// <param name="openerWindowUrl">The parent window of the open window of the current form</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>
/// Function name:ReplaceOpenerParentWindow
/// Function description: Replace the parent window of the open window of the current form
/// </summary>
/// <param name="openerWindowUrl">The parent window of the open window of the current form</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>
/// Function name: CloseParentWindow
/// Function description: Close window
/// </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>
/// Function name: ShowModalDialogJavascript
/// Function description: Return the script that opens the modal window
/// </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>
/// Function name:ShowModalDialogWindow
/// Function description: Open modal window
/// </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);
}
}
}
http://www.cnblogs.com/fds2003/archive/2006/10/20/534208.html