易截截图软件、单文件、免安装、纯绿色、仅160KB

javascript在alert之前转义单引号

对于1个单引号,则转义该单引号
对于1个反斜杠跟1个单引号,则不管它。
对于2个及以上的反斜杠加一个单引号,则分别对每个反斜杠和单引号都进行转义,即 使反斜杠数目保持不变, 并转义单引号。
 

/// <summary>
/// 对于单引号而言,若前面有偶数个反斜杠则异常,奇数个反斜杠则正常
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
private string ReplaceQuote(string input)
{
string pattern = @"(?:\\)*(?=['])";
return Regex.Replace(input, pattern, new MatchEvaluator(ReplaceText));
}
// 匹配项
public string ReplaceText(Match m)
{
string str = m.Value;
if (str.Length == 0)
{
// 只有单引号,则转义该单引号
return str + @"\";
}
else if(str.Length == 1)
{
// 1个反斜杠加一个单引号,则不替换
return string.Empty;
}
// 对于大于2个长度的反斜杠,则返回原来的2倍
// 即 使把每个反斜杠都转义了。
return new string('\\', 2 * str.Length);
}



protected void Page_Load(object sender, EventArgs e)
{

// 测试代码
string strText = @"'a\'b\\'c\\\'d\\\\'";
System.Diagnostics.Stopwatch swt = new System.Diagnostics.Stopwatch();
swt.Start();
strText = ReplaceQuote(strText);
swt.Stop();
Response.Write("替换使用了毫秒数:" + swt.ElapsedMilliseconds.ToString());
string strAlert = string.Format("alert('{0}')", strText);
ClientScript.RegisterStartupScript(this.GetType(), "alert", strAlert, true);
}


相关文档:

marquee滚动标签的javascript(jquery)替代品

marquee滚动标签的javascript(jquery)替代品:jquery.marquee插件(http://remysharp.com/tag/marquee)   <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999 ......

javascript简单验证

<html>
  <head>
    <base href="<%=basePath%>">
   
 <script type="text/javascript">
  function check(){
   var name1 = document.form1.name1.value;
   
   var passwor ......

a href=#与 a href=javascript:void(0) 的区别

a href="#"> 点击链接后,页面会向上滚到页首,# 默认锚点为 #TOP
<a href="javascript:void(0)" onClick="window.open()"> 点击链接后,页面不动,只打开链接
<a href="#" onclick="javascript:return false;"> 作用同上,不同浏览器会有差异。
点击链接后,不想使页面滚到页首,就用href="javascript:v ......

Javascript实现html块语法高亮(搜索后关键字高亮)

dp.SyntaxHighlighter
dp.SyntaxHighlighter,这东西yahoo都在用它,支持多种语言。
只需要将代码放到<textarea>标签内,它就可以自动根据class指定的语言来对textarea内容进行着色,还提供了行号、打印等功能。如:
Xml代码
<TEXTAREA class=java name=code><br/>    // code here ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号