分类目录归档:前端

前端包括Javascript和css等

JS operations on JSON summary

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式。同时,JSON是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON数据不须要任何特殊的 API 或工具包。
本文主要是对JS操作JSON的要领做下总结。
在JSON中,有两种结构:对象和数组。

  1. 一个对象以{(左括号)开始,}(右括号)结束。每个“名称”后跟一个:(冒号);“‘名称/值’ 对”之间运用 ,(逗号)分隔。 名称用引号括起来;值如果是字符串则必须用括号,数值型则不须要。例如:
    var o = {
      "xlid": "cxh",
      "xldigitid": 123456,
      "topscore": 2000,
      "topplaytime": "2009-08-20"
    }
    
  2. 数组是值(value)的有序集合。一个数组以[(左中括号)开始,](右中括号)结束。值之间运用 ,(逗号)分隔。例如:
    var jsonranklist = [{
      "xlid": "cxh",
      "xldigitid": 123456,
      "topscore": 2000,
      "topplaytime": "2009-08-20"
    }, {
      "xlid": "zd",
      "xldigitid": 123456,
      "topscore": 1500,
      "topplaytime": "2009-11-20"
    }];
    

为了方便地处理JSON数据,JSON提供了json.js包,下载地址:http://www.json.org/json.js
在数据传输流程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。例如:

  • JSON字符串:
    var str1 = '{ "name": "cxh", "sex": "man" }';
    
  • JSON对象:
    var str2 = { "name": "cxh", "sex": "man" };
    
  1. JSON字符串转换为JSON对象,要运用上面的str1,必须运用下面的要领先转化为JSON对象:
    var obj = eval('(' + str + ')');//由JSON字符串转换为JSON对象
    

    或者

    var obj = str.parseJSON(); //由JSON字符串转换为JSON对象
    

    或者

    var obj = JSON.parse(str); //由JSON字符串转换为JSON对象
    

    然后,就可以这样读取:

    Alert(obj.name);
    Alert(obj.sex);
    

    特别留心:如果obj本来就是一个JSON对象,那么运用 eval()函数转换后(哪怕是多次转换)还是JSON对象,但是运用 parseJSON()函数处理后会有疑问(抛出语法异常)。

  2. 可以运用 toJSONString()或者全局要领 JSON.stringify()将JSON对象转化为JSON字符串。
    例如:

    var last=obj.toJSONString(); //将JSON对象转化为JSON字符
    

    或者

    var last=JSON.stringify(obj); //将JSON对象转化为JSON字符
    
    alert(last);
    

    留心:上面的多个要领中,除了eval()函数是js自带的之外,其他的多个要领都来自json.js包。新版本的 JSON 修改了 API,将 JSON.stringify()JSON.parse() 两个要领都注入到了 Javascript 的内建对象里面,前者变成了 Object.toJSONString(),而后者变成了 String.parseJSON()。如果提示找不到toJSONString()parseJSON()要领,则说明您的json包版本太低。

js提交表单

1.document.forms.from.submit();
document.form.sumbit();
document.form.submit.click();
this.form.submit();
以上几种形式的js表单提交在firefox浏览器下是不起作用的
2.必须遵循w3c标准:
1).获得form时应使用getElementById()方法
2).用.submit()方法提交表单
3).button的name/id绝对不能命名为”submit”
4).form中所有的组件(按钮,文本框等)的name/id也不能命名为”submit”

js页面跳转的几种方法

通过js或者html或者php等动态程序都可以方便的实现跳转,这里搜集了几种页面跳转的方式

js方式的页面跳转
1.window.location.href方式
    <script language="javascript" type="text/javascript">
           window.location.href="http://www.dayanmei.com/";
    </script>
2.window.navigate方式跳转
   <script language="javascript">
    window.navigate("top.jsp");
</script>

3.window.loction.replace方式实现页面跳转,注意跟第一种方式的区别
<script language="javascript">
    window.location.replace("http://www.dayanmei.com");
</script>
有3个jsp页面(1.jsp, 2.jsp, 3.jsp),进系统默认的是1.jsp ,当我进入2.jsp的时候, 2.jsp里面用window.location.replace("3.jsp");与用window.location.href ("3.jsp");从用户界面来看是没有什么区别的,但是当3.jsp页面有一个"返回"按钮,调用window.history.go(-1); wondow.history.back();方法的时候,一点这个返回按钮就要返回2.jsp页面的话,区别就出来了,当用 window.location.replace("3.jsp");连到3.jsp页面的话,3.jsp页面中的调用 window.history.go(-1);wondow.history.back();方法是不好用的,会返回到1.jsp 。
4.self.location方式实现页面跳转,和下面的top.location有小小区别
   <script language="JavaScript">
          self.location=’top.htm’;
   </script>
5.top.location
   <script language="javascript">
          top.location=’xx.jsp’;
   </script>

6.不推荐这种方式跳转
    <script language="javascript">
    alert("返回");
    window.history.back(-1);
   </script>

在php程序中,这种方式跳转前面不能有任何输出
<?php
header("url.php");
?>

meta方式实现跳转(content = 3 单位是秒)
<meta http-equiv=refresh content=3;URL="http://www.dayanmei.com">

总结二:

1. Javascript 返回上一页 history.go(-1), 返回两个页面: history.go(-2);
2. history.back().
3. window.history.forward()返回下一页
4. window.history.go(返回第几页,也可以使用访问过的URL)
例:
<a href="javascript:history.go(-1);">向上一页</a>
response.Write("<script language=javascript>")
response.Write("if(!confirm(‘完成任务?’)){history.back();}")
response.Write("</script>")
response.Write("<script language=javascript>history.go(-1);</script>")
<a href="javascript:history.go(-1);">向上一页</a>
页面跳转:onclick="window.location.href=’list.aspx’"
P.S.
小技巧(JS引用JS):
<script type=text/javascript>
<!–
if (typeof SWFObject == "undefined") {
document.write(‘<scr’ + ‘ipt type="text/javascript" src="/scripts/swfobject-1.5.js"></scr’ + ‘ipt>’);}
//–>
</script>
Javascript刷新页面的几种方法:
1    history.go(0)
2    location.reload()
3    location=location
4    location.assign(location)
5    document.execCommand(‘Refresh’)
6    window.navigate(location)
7    location.replace(location)
8    document.URL=location.href
自动刷新页面的方法:
1.页面自动刷新:把如下代码加入<head>区域中
<meta http-equiv="refresh" content="20">
其中20指每隔20秒刷新一次页面.
2.页面自动跳转:把如下代码加入<head>区域中
<meta http-equiv="refresh" content="20;url=http://www.wyxg.com">
其中20指隔20秒后跳转到http://www.wyxg.com页面
3.页面自动刷新js版
<script language="JavaScript">
function myrefresh()
{
       window.location.reload();
}
setTimeout(‘myrefresh()’,1000); //指定1秒刷新一次
</script>
ASP.NET如何输出刷新父窗口脚本语句
1.   this.response.write("<script>opener.location.reload();</script>");
2.   this.response.write("<script>opener.window.location.href = opener.window.location.href;</script>");
3.   Response.Write("<script language=javascript>opener.window.navigate(”你要刷新的页.asp”);</script>")
JS刷新框架的脚本语句
//如何刷新包含该框架的页面用
<script language=JavaScript>
   parent.location.reload();
</script>
//子窗口刷新父窗口
<script language=JavaScript>
    self.opener.location.reload();
</script>
( 或 <a href="javascript:opener.location.reload()">刷新</a>   )
//如何刷新另一个框架的页面用
<script language=JavaScript>
   parent.另一FrameID.location.reload();
</script>
如果想关闭窗口时刷新或者想开窗时刷新的话,在<body>中调用以下语句即可。
<body onload="opener.location.reload()"> 开窗时刷新
<body onUnload="opener.location.reload()"> 关闭时刷新
<script language="javascript">
window.opener.document.location.reload()
</script>

html+js轮播图片slide show

提示:你可以先修改部分代码再运行。


	
		
		
		


	

Javascript检测终端浏览器是android或ipad、iphone

有些时候会需要判断页面是在哪种移动终端上运行的
navigator.appVersion:
<script>document.write(navigator.appVersion);</script>
<br/>
Device type:
<script>if((/android/gi).test(navigator.appVersion))
document.write("android");
if((/iphone|ipad/gi).test(navigator.appVersion))
document.write("IOS");
</script>
<br/>

 

提示:你可以先修改部分代码再运行。

ps:本文只打印出了是不是android或ios,其他的没有打出来

15秒快速购买火车票教程:

1、提前十五分钟(8点放票,我是7点半登的系统),用Firefox(8.01)打开页面:https://dynamic.12306.cn/otsweb/order/querySingleAction.do?method=init

2、提前十分钟,查询能够进入预订页面(预订按钮为激活状态)的同类车次,进入该页面。比如,我想订的是14号T9的硬卧(这个时候还没放出来),但我知道12号的硬座还有票,那么我直接查询12号T9。

1325736318_00128300

3、提前五分钟,用Firebug改好相应的参数,这步非常重要。

3A、修改席别

右键单击 席别 下面的下拉列表,选择 审查元素。

1325736318_82028600

修改 硬座 对应项的值,即将 Value 改为3(3对应的是硬卧)。

 

1325736322_81302700

3B、修改日期

在之前动态修改的 HTML 代码之上,找到 id 为 start_date 的 INPUT 标记(默认为隐藏),将日期修改为想要预定的时间。

.1325736323_82592200

4、提前一分钟,单击(刷新)验证码并填好(注意是只刷新验证码)。

5、提前几秒钟,单击提交订单按钮

Javascript中最常用的55个经典技巧

  1. 将彻底屏蔽鼠标右键
    oncontextmenu="window.event.returnValue=false"
    <table border oncontextmenu=return(false)><td>no</table> 可用于Table

  2. 取消选取、防止复制
    <body onselectstart="return false">

  3. 不准粘贴
    onpaste="return false"

  4. 防止复制
    oncopy="return false;" oncut="return false;"

  5. IE地址栏前换成自己的图标
    <link rel="Shortcut Icon" href="favicon.ico">

  6. 可以在收藏夹中显示出你的图标
    <link rel="Bookmark" href="favicon.ico">

  7. 关闭输入法
    <input style="ime-mode:disabled">

  8. 永远都会带着框架

    <script language="JavaScript"><!--
    if (window == top)top.location.href = "frames.htm"; //frames.htm为框架网页
    // --></script>
    
  9. 防止被人frame
    <SCRIPT LANGUAGE=JAVASCRIPT><!--
    if (top.location != self.location)top.location=self.location;
    // --></SCRIPT>
    
  10. 网页将不能被另存为
    <noscript><*** src="/*.html>";</***></noscript>

  11. <input type=button value="/查看网页源代码 onclick="window.location = "view-source:"+ "http://www.pconline.com.cn"">

  12. 删除时确认
    <a href=""javascript :if(confirm("确实要删除吗?"))location="boos.asp?&areyou=删除&page=1"">删除</a>

  13. 取得控件的绝对位置

    //Javascript
    <script language="Javascript">
    function getIE(e){
        var t=e.offsetTop;
        var l=e.offsetLeft;
        while(e=e.offsetParent){
            t+=e.offsetTop;
            l+=e.offsetLeft;
        }
        alert("top="+t+"/nleft="+l);
    }
    </script>
    
  14. 光标是停在文本框文字的最后
    <script language="javascript">
    function cc()
    {
        var e = event.srcElement;
        var r =e.createTextRange();
        r.moveStart("character",e.value.length);
        r.collapse(true);
        r.select();
    }
    </script>
    <input type=text name=text1 value="123" onfocus="cc()">
    
  15. 判断上一页的来源
    document.referrer

  16. 最小化、最大化、关闭窗口

    <object id=hh1 classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">
    <param name="Command" value="Minimize"></object>
    <object id=hh2 classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">
    <param name="Command" value="Maximize"></object>
    <OBJECT id=hh3 classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">
    <PARAM NAME="Command" value="/Close"></OBJECT>
    <input type=button value="/最小化 onclick=hh1.Click()>
    <input type=button value="/blog/最大化 onclick=hh2.Click()>
    <input type=button value=关闭 onclick=hh3.Click()>
    
  17. 屏蔽功能键Shift,Alt,Ctrl
    <script>
    function look(){
        if(event.shiftKey)
            alert("禁止按Shift键!"); //可以换成ALT CTRL
    }
    document.onkeydown=look;
    </script>
    
  18. 网页不会被缓存
    <META HTTP-EQUIV="pragma" CONTENT="no-cache">
    <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
    <META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT">
    //或者
    <META HTTP-EQUIV="expires" CONTENT="0">
    
  19. 怎样让表单没有凹凸感?
    <input type=text style="""border:1 solid #000000">

    <input type=text style="border-left:none; border-right:none; border-top:none; border-bottom: 1 solid #000000"></textarea>

  20. <div><span>&<layer>的区别?
    <div>(division)用来定义大段的页面元素,会产生转行
    <span>用来定义同一行内的元素,跟<div>的唯一区别是不产生转行
    <layer>是ns的标记,ie不支持,相当于<div>

  21. 让弹出窗口总是在最上面:
    <body onblur="this.focus();">

  22. 不要滚动条?

    • 让竖条没有:
      <body style="overflow:scroll;overflow-y:hidden"></body>

    • 让横条没有:
      <body style="overflow:scroll;overflow-x:hidden"></body>

    • 两个都去掉?更简单了
      <body scroll="no"></body>

  23. 怎样去掉图片链接点击后,图片周围的虚线?
    <a href="#" onFocus="this.blur()"><img src="/logo.jpg" border=0></a>

  24. 电子邮件处理提交表单

    <form name="form1" method="post" action=mailto:****@***.com
    enctype="text/plain">
    <input type=submit>
    </form>
    
  25. 在打开的子窗口刷新父窗口的代码里如何写?
    window.opener.location.reload()

  26. 如何设定打开页面的大小
    <body onload="top.resizeTo(300,200);">
    打开页面的位置<body onload="top.moveBy(300,200);">

  27. 在页面中如何加入不是满铺的背景图片,拉动页面时背景图不动

    <STYLE>
    body
    {background-image:url(/logo.gif); background-repeat:no-repeat;
    background-position:center;background-attachment: fixed}
    </STYLE>
    
  28. 检查一段字符串是否全由数字组成
    <script language="Javascript">
    function checkNum(str){return str.match(//D/)==null}
    alert(checkNum("1232142141"))
    alert(checkNum("123214214a1"))
    </script>
    
  29. 获得一个窗口的大小
    • document.body.clientWidth

    • document.body.clientHeight

  30. 怎么判断是否是字符

    if (/[^/x00-/xff]/g.test(s)) alert("含有汉字");
    else alert("全是字符");
    
  31. TEXTAREA自适应文字行数的多少
    <textarea rows=1 cols=27 onpropertychange="this.style.posHeight=this.scrollHeight">
    </textarea>
    
  32. 日期减去天数等于第二个日期
    <script language=Javascript>
    function cc(dd,dadd)
    {
        //可以加上错误处理
        var a = new Date(dd)
        a = a.valueOf()
        a = a - dadd * 24 * 60 * 60 * 1000
        a = new Date(a)
        alert(a.getFullYear() + "年" + (a.getMonth() + 1) + "月" + a.getDate() + "日")
    }
    cc("12/23/2002",2)
    </script>
    
  33. 选择了哪一个Radio
    <HTML><script language="vbscript">
    function checkme()
    for each ob in radio1
    if ob.checked then
    window.alert ob.value
    next
    end function
    </script><BODY>
    <INPUT name="radio1" type="radio" value="/style" checked>Style
    <INPUT name="radio1" type="radio" value="/blog/barcode">Barcode
    <INPUT type="button" value="check" onclick="checkme()">
    </BODY></HTML>
    
  34. 脚本永不出错
    <SCRIPT LANGUAGE="JavaScript">
    function killErrors() {
        return true;
    }
    window.onerror = killErrors;
    </SCRIPT>
    
  35. ENTER键可以让光标移到下一个输入框
    <input onkeydown="if(event.keyCode==13)event.keyCode=9">

  36. 检测某个网站的链接速度:
    把如下代码加入区域中:

    <script language=Javascript>
    tim=1
    setInterval("tim++",100)
    b=1
    var autourl=new Array()
    autourl[1]=1000){this.resized=true;this.style.width=1000;}" align=absMiddle border=0>www.njcatv.net"
    autourl[2]="javacool.3322.net"
    autourl[3]=1000){this.resized=true;this.style.width=1000;}" align=absMiddle border=0>www.sina.com.cn"
    autourl[4]="www.nuaa.edu.cn"
    autourl[5]=1000){this.resized=true;this.style.width=1000;}" align=absMiddle border=0>www.cctv.com"
    function butt(){
    ***("<form name=autof>")
    for(var i=1;i<autourl.length;i++)
    ***("<input type=text name=txt"+i+" size=10 value="/测试中……> =》<input type=text
    name=url"+i+" size=40> =》<input type=button value="/blog/GO
    onclick=window.open(this.form.url"+i+".value)><br>")
    ***("<input type=submit value=刷新></form>")
    }
    butt()
    function auto(url){
    document.forms[0]["url"+b].value=url
    if(tim>200)
    {document.forms[0]["txt"+b].value="/链接超时"}
    else
    {document.forms[0]["txt"+b].value="/blog/时间"+tim/10+"秒"}
    b++
    }
    function run(){for(var i=1;i<autourl.length;i++)***("<img src=http://"+autourl+"/"+Math.random()+" width=1 height=1
    onerror=auto("http://"+autourl+"")>")}
    run()</script>
    
  37. 各种样式的光标
    • auto :标准光标
    • default :标准箭头
    • hand :手形光标
    • wait :等待光标
    • text :I形光标
    • vertical-text :水平I形光标
    • no-drop :不可拖动光标
    • not-allowed :无效光标
    • help :?帮助光标
    • all-scroll :三角方向标
    • move :移动标
    • crosshair :十字标
    • e-resize
    • n-resize
    • nw-resize
    • w-resize
    • s-resize
    • se-resize
    • sw-resize
  38. 页面进入和退出的特效
    • 进入页面<meta http-equiv="Page-Enter" content="revealTrans(duration=x, transition=y)">

    • 推出页面<meta http-equiv="Page-Exit" content="revealTrans(duration=x, transition=y)">

    这个是页面被载入和调出时的一些特效。duration表示特效的持续时间,以秒为单位。transition表示使用哪种特效,取值为1-23:

    1. 矩形缩小
    2. 矩形扩大
    3. 圆形缩小
    4. 圆形扩大
    5. 下到上刷新
    6. 上到下刷新
    7. 左到右刷新
    8. 右到左刷新
    9. 竖百叶窗
    10. 横百叶窗
    11. 错位横百叶窗
    12. 错位竖百叶窗
    13. 点扩散
    14. 左右到中间刷新
    15. 中间到左右刷新
    16. 中间到上下
    17. 上下到中间
    18. 右下到左上
    19. 右上到左下
    20. 左上到右下
    21. 左下到右上
    22. 横条
    23. 竖条
    24. 以上22种随机选择一种
  39. 在规定时间内跳转
    <META http-equiv=V="REFRESH" content="5;URL=http://www.51js.com">

  40. 网页是否被检索
    <meta name="ROBOTS" content="属性值">

    • 其中属性值有以下一些:
    • 属性值为”all”: 文件将被检索,且页上链接可被查询;
    • 属性值为”none”: 文件不被检索,而且不查询页上的链接;
    • 属性值为”index”: 文件将被检索;
    • 属性值为”follow”: 查询页上的链接;
    • 属性值为”noindex”: 文件不检索,但可被查询链接;
    • 属性值为”nofollow”: 文件不被检索,但可查询页上的链接。
  41. email地址的分割
    把如下代码加入<body>区域中
    <a href="mailto:webmaster@sina.com">webmaster@sina.com</a>

  42. 流动边框效果的表格
    把如下代码加入<body>区域中

    <SCRIPT>
    l=Array(6,7,8,9,'a','b','b','c','d','e','f')
    Nx=5;Ny=35
    t="<table border=0 cellspacing=0 cellpadding=0 height="+((Nx+2)*16)+"><tr>"
    for(x=Nx;x<Nx+Ny;x++)
    t+="<td width=16 id=a_mo"+x+"> </td>"
    t+="</tr><tr><td width=10 id=a_mo"+(Nx-1)+"> </td><td colspan="+(Ny-2)+" rowspan="+(Nx)+"> </td><td width=16 id=a_mo"+(Nx+Ny)+"></td></tr>"
    for(x=2;x<=Nx;x++)
    t+="<tr><td width=16 id=a_mo"+(Nx-x)+"> </td><td width=16 id=a_mo"+(Ny+Nx+x-1)+"> </td></tr>"
    t+="<tr>"
    for(x=Ny;x>0;x--)
    t+="<td width=16 id=a_mo"+(x+Nx*2+Ny-1)+"> </td>"
    ***(t+"</tr></table>")
    var N=Nx*2+Ny*2
    function f1(y){
    for(i=0;i<N;i++){
    c=(i+y)%20;if(c>10)c=20-c
    document.all["a_mo"+(i)].bgColor=""""#0000"+l[c]+l[c]+"'"}
    y++
    setTimeout('f1('+y+')','1')}
    f1(1)
    </SCRIPT>
    
  43. JavaScript主页弹出窗口技巧
    窗口中间弹出

    <script>
    window.open("http://www.cctv.com","","width=400,height=240,top="+(screen.availHeight-240)/2+",left="+(screen.availWidth-400)/2);
    </script>
    ============
    <html>
    <head>
    <script language="LiveScript">
    function WinOpen() {
        msg=open("","DisplayWindow","toolbar=no,directories=no,menubar=no");
        msg.***("<HEAD><TITLE>哈 罗!</TITLE></HEAD>");
        msg.***("<CENTER><H1>酷 毙 了!</H1><h2>这 是<B>JavaScript</B>所 开 的 视 窗!</h2></CENTER>");
    }
    </script>
    </head>
    <body>
    <form>
    <input type="button" name="Button1" value="Push me" onclick="WinOpen()">
    </form>
    </body>
    </html>
    
  44. 页面的打开移动
    把如下代码加入<body>区域中

    <SCRIPT LANGUAGE="JavaScript">
    for (t = 2; t > 0; t--) {
        for (x = 20; x > 0; x--) {
            for (y = 10; y > 0; y--) {
                parent.moveBy(0,-x);
            }
        }
        for (x = 20; x > 0; x--) {
            for (y = 10; y > 0; y--) {
                parent.moveBy(0,x);
            }
        }
        for (x = 20; x > 0; x--) {
            for (y = 10; y > 0; y--) {
                parent.moveBy(x,0);
            }
        }
        for (x = 20; x > 0; x--) {
            for (y = 10; y > 0; y--) {
                parent.moveBy(-x,0);
            }
        }
    }
    </script>
    
  45. 显示个人客户端机器的日期和时间
    <script language="LiveScript">
    today = new Date()
    console.log("现 在 时 间 是: ",today.getHours(),":",today.getMinutes());
    console.log("<br>今 天 日 期 为: ", today.getMonth()+1,"/",today.getDate(),"/",today.getYear());
    </script>
    
  46. 自动的为你每次产生最後修改的日期了:
    <html>
    <body>
    This is a simple HTML- page.
    <br>
    Last changes:
    <script language="LiveScript">
        ***(document.lastModified)
    </script>
    </body>
    </html>
    
  47. 不能为空和邮件地址的约束:
    <html>
    <head>
    <script language="JavaScript">
    function test1(form) {
        if (form.text1.value == "")
            alert("您 没 写 上 任 何 东 西, 请 再 输 入 一 次 !")
        else {
            alert("嗨 "+form.text1.value+"! 您 已 输 入 完 成 !");
        }
    }
    function test2(form) {
        if (form.text2.value == "" || form.text2.value.indexOf('@', 0) == -1)
            alert("这 不 是 正 确 的 e-mail address! 请 再 输 入 一 次 !");
        else alert("您 已 输 入 完 成 !");
    }
    </script>
    </head>
    <body>
        <form name="first">
            Enter your name:<br>
            <input type="text" name="text1">
            <input type="button" name="button1" value="输 入 测 试" onClick="test1(this.form)">
            <P>
            Enter your e-mail address:<br>
            <input type="text" name="text2">
            <input type="button" name="button2" value="输 入 测 试" onClick="test2(this.form)">
        </form>
    </body>
    
  48. 跑马灯
    <html>
    <head>
    <script language="JavaScript">
    var scrtxt="怎麽样 ! 很酷吧 ! 您也可以试试."+"Here goes your message the visitors to your
    page will "+"look at for hours in pure fascination...";
    var lentxt=scrtxt.length;
    var width=100;
    var pos=1-width;
    function scroll() {
        pos++;
        var scroller="";
        if (pos==lentxt) {
            pos=1-width;
        }
        if (pos<0) {
            for (var i=1; i<=Math.abs(pos); i++) {
            scroller=scroller+" ";}
            scroller=scroller+scrtxt.substring(0,width-i+1);
        }
        else {
            scroller=scroller+scrtxt.substring(pos,width+pos);
        }
        window.status = scroller;
        setTimeout("scroll()",150);
    }
    </script>
    </head>
    <body onLoad="scroll();return true;">
    这里可显示您的网页 !
    </body>
    </html>
    
  49. 在网页中用按钮来控制前页,后页和主页的显示。
    <html>
    <body>
    <FORM NAME="buttonbar">
        <INPUT TYPE="button" VALUE="Back" onClick="history.back()">
        <INPUT TYPE="button" VALUE="JS- Home" onClick="location='script.html'">
        <INPUT TYPE="button" VALUE="Next" onCLick="history.forward()">
    </FORM>
    </body>
    </html>
    
  50. 查看某网址的源代码
    把如下代码加入<body>区域中

    <SCRIPT>
    function add()
    {
        var ress=document.forms[0].luxiaoqing.value
        window.location="view-source:"+ress;
    }
    </SCRIPT>
    输入要查看源代码的URL地址:
    <FORM>
        <input type="text" name="luxiaoqing" size=40 value="http://"></FORM>
    <FORM><br>
    <INPUT type="button" value="查看源代码" onClick=add()>
    </FORM>
    
  51. title显示日期
    把如下代码加入<body>区域中:

    <script language="JavaScript1.2">
    var isnMonth = new Array("1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月");
    var isnDay = new Array("星期日","星期一","星期二","星期三","星期四","星期五","星期六","星期日");
    today = new Date () ;
    Year = today.getYear();
    Date = today.getDate();
    if (document.all)
        document.title="今天是: "+Year+"年"+isnMonth[today.getMonth()]+Date+"日"+isnDay[today.getDay()]
    </script>
    
  52. 显示所有链接
    把如下代码加入<body>区域中

    <script language="JavaScript1.2">
    function extractlinks(){
        var links=document.all.tags("A")
        var total=links.length
        var win2=window.open("","","menubar,scrollbars,toolbar")
        win2.***("<font size='2'>一共有"+total+"个连接</font><br>")
        for (i=0;i<total;i++){
            win2.***("<font size='2'>"+links[i].outerHTML+"</font><br>")
        }
    }
    </script>
    <input type="button" onClick="extractlinks()" value="显示所有的连接">
    
  53. 回车键换行
    把如下代码加入<body>区域中

    <script type="text/javascript">
    function handleEnter (field, event) {
        var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
        if (keyCode == 13) {
            var i;
            for (i = 0; i < field.form.elements.length; i++)
                if (field == field.form.elements[i])
                    break;
                i = (i + 1) % field.form.elements.length;
                field.form.elements[i].focus();
            return false;
        }
        else
            return true;
    }
    </script>
    <form>
    <input type="text" onkeypress="return handleEnter(this, event)"><br>
    <input type="text" onkeypress="return handleEnter(this, event)"><br>
    <textarea>
    
  54. 确认后提交
    把如下代码加入<body>区域中

    <SCRIPT LANGUAGE="JavaScript">
    function msg(){
    if (confirm("你确认要提交嘛!"))
        document.lnman.submit()
    }
    </SCRIPT>
    <form name="lnman" method="post" action="">
        <input type="text" name="textfield" value="确认后提交">
        <input type="button" name="Submit" value="提交" onclick="msg();">
    </form>
    
  55. 改变表格的内容
    把如下代码加入<body>区域中

    <script ***script>
    var arr=new Array()
    arr[0]="一一一一一";
    arr[1]="二二二二二";
    arr[2]="三三三三三";
    </script>
    <select onchange="zz.cells[this.selectedIndex].innerHTML=arr[this.selectedIndex]">
    <option value=a>改变第一格</option>
    <option value=a>改变第二格</option>
    <option value=a>改变第三格</option>
    </select>
    <table id=zz border=1>
        <tr height=20>
            <td width=150>第一格</td>
            <td width=150>第二格</td>
            <td width=150>第三格</td>
        </tr>
    </table>
    

aspx使用ajax调用服务器方法

Page Method 方式
如果不想独立创建Web Service,而只是希望能够调用页面上的一些方法,那么可以采用Page Method的的方法。同样的我们添加一个页面PageMethodDemo.aspx,增加一些JavaScript和一个后台方法,注意这个方法必须 是静态方法,代码如下:

<script type="text/javascript">
function PageMethodCall()
{
    var testString = "PageMethodCall";
    PageMethods.Test($get('txtName').value, OnSucceeded);
}
// 页面方法调用完成的回调函数.
function OnSucceeded(result)
{
    // 显示调用结果
    var RsltElem = document.getElementById("Results");
    RsltElem.innerHTML = result;
}
</script>
<form id="form1">
    <h2>Page Method</h2>
    <input id="txtName" type="text" />
    <button id="Button1">调用Page Method</button>
</form>

代码页PageMethodDemo.aspx.cs

[System.Web.Services.WebMethod]
public static string Test(string name)
{
    return "Hello " + name + "!";
}