标签:style http java color 使用 os
例程:
<body>
<script type="text/javascript">
var date=new Date();
document.writeln("日期是:"+date.toLocaleString()+"<br/>");
document.writeln("日期对应的JSON字符串为:"+date.toJSON()+"<br/>");
var p={
name:"zpc",
age:25
};
//将对象转换成JSON字符串
document.writeln("普通对象的JSON字符串为:"+Object.toJSON(p)+"<br/>");
var books=["周鹏程","鸟鹏"];
//document.writeln("数组的JSON字符串为:"+books.toJSON()+"<br/>");
var hash=$H({name:'周鹏程',age:34});
document.writeln("Hash对象的JSON字符串为:"+hash.toJSON()+"<br/>");
//document.writeln("数值的JSON字符串为:"+(45).toJSON()+"<br/>");
var str='{"name":"zpc","gender":"male"}';
//将一个json格式的字符串转换成JSON对象
var zpc=str.evalJSON();
document.writeln("zpc对象的名字:"+zpc.name+"<br/>");
document.writeln("zpc对象的性别:"+zpc.gender+"<br/>");
</script>
</body>7、使用Element对象:该类提供了一些方法简化HTML元素的操作 例程:
<body>
<script type="text/javascript" src="prototype-1.6.0.3.js"></script>
<script type="text/javascript">
//直接用new创建一个ObjectRange对象
var range=new ObjectRange(2,9,true);//true表示不包含9
range.each(function(ele,index){
document.writeln("索引"+index+"处的值:"+ele+"<br/>")
});
//使用$R()函数创建一个ObjectRange对象
var ra=$R('a','g');
document.writeln($A(ra));
alert(ra.include('b'));
</script>
</body>9、使用Form.Element操作表单控件<body>
<table border="1">
<tr><td><div><input id="ok" type="button" value="click me"/></div>table的Inner</td></tr>
</table>
<div id="d">e</div>
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript">
Event.observe("ok","click",function(event){
document.writeln("是否为左击事件:"+event.isLeftClick());
document.writeln("事件源:"+event.element().value);
document.writeln("最近的td元素:"+event.findElement("td").innerHTML);
});
$("d").innerHTML="<h2>哈哈<h2>";
</script>
</body>
//上面的代码不在使用原始的事件模型,而是使用基于Event提供的事件简化,这种简化消除了事件模型的浏览器差异。13、使用Template<body>
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript">
objArr = [ {
book : 'Hadoop教程',
author : "zpc"
}, {
book : 'Java教程',
author : '钱刚'
}, {
book : '天龙八部',
author : "金庸"
} ];
var template=new Template("书名是#{book},作者是#{author}.");
for(var i=0;i<objArr.length;i++){
document.writeln(template.evaluate(objArr[i]));
}
</script>
</body>14、使用Class的create()方法创建对象可以提供一些面向对象的支持 //只要任何表单控件的值被改变就触发
<body>
<form action="#" method="post" id="test">
用户名:<input type="text" id="user" name="user"/>
密 码:<input type="text" id="pass" name="pass"/>
</form>
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript">
new Form.Observer("test",1,function(){
alert(this.getValue());
});
</script>
</body>
//用户名输入框值改变触发
<body>
<form action="#" method="post" id="test">
用户名:<input type="text" id="user" name="user"/>
密 码:<input type="text" id="pass" name="pass"/>
</form>
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript">
new Form.Element.Observer("user",1,function(){
alert(this.getValue());
});
</script>
</body>16、Prototype库不仅提供了一系列的自定义的类和对象,还扩展了某些JS中原有的类和对象。 <body>
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript">
//为document的loaded事件绑定监听器
document.observe("dom:loaded",function(event){
$("show").innerHTML+=("页面装载完成<br/>");
});
//为document的a:b事件绑定事件监听器
document.observe("a:b",function(event){
$("show").innerHTML+=("myEvent被触发了<br/>");
$("show").innerHTML+=("event.memo.book的属性值:"+event.memo.book);
});
</script>
<input type="button" value="单击我" onclick='document.fire("a:b",{book:"Hadoop权威指南"});'/>
<div id="show"></div>
</body>//a:b是开发者自定义的“人工合成”事件。单击页面中的“单击我”按钮时,程序使用document.fire()方法触发a:b事件<body>
<h3>请输入您喜欢的水果</h3>
<div style="width:280px;font-size:9pt">输入apple、banana、peach可以看到明显效果</div><br/>
<input id="favorite" name="favorite" tyep="text" onblur="$('tips').hide();"/>
<div id="tips" style="width:160px;border:1px solid menu;background-color: #ffffcc;display: none;"></div>
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript">
function searchFruit(){
var url="/Ajax/fruit.jsp";
//将favorite表单域的值转化为请求参数,形如favorite=app&color=red....
var params=Form.Element.serialize('favorite');
//alert(params);
//创建Ajax.Request对象,对应于发送请求
var myAjax=new Ajax.Request(
url,
{
method:'post',
parameters:params,
onComplete:showResponse,
asynchronous:true
});
}
//定义回调函数
function showResponse(request){
//alert("回调函数被触发!");
//在tip中显示服务器的响应
$('tips').innerHTML=request.responseText;
//显示tip对象
$('tips').show();
}
new Form.Element.Observer("favorite",1,searchFruit);
</script>
</body>
//JSP页面嵌入的Java代码
<%
String hdchar=request.getParameter("favorite");
System.out.println(hdchar);
if("apple".startsWith(hdchar)){
out.println("apple");
}else if("banana".startsWith(hdchar)){
out.println("banana");
}else if("peach".startsWith(hdchar)){
out.println("peach");
}else {
out.println("other");
}
%>(2)使用Form.request()方法<body>
<h3>
请输入用户名和密码登录
</h3>
<form id="login" action="/Ajax/login.jsp" method="post">
用户名:
<input type="text" name="user" />
<br />
密 码:
<input type="password" name="pass">
<br />
<input type="button" value="验证用户" onclick="login();"/>
<br />
<div id="d"></div>
</form>
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript">
function login() {
//直接使用Form的request方法发送异步请求,request方法的参数是个json数组的格式!
$("login").request( {
//指定回调函数
onComplete : function(request) {
$("d").innerHTML = request.responseText;
}
});
}
</script>
</body>
jsp页面嵌入的Java代码
<%
String user=request.getParameter("user");
String pass=request.getParameter("pass");
if(user.equals("zpc")&&pass.equals("123456")){
out.println("验证通过!");
}else{
out.println("没有通过验证!");
}
%>
(2)使用Ajax.Responders对象
这个对象用于注册Ajax事件监听器,该对象注册的Ajax事件监听器不管是哪个XMLHttpRequest在发生交互,都能被自动触发。因而Ajax.Responders注册的事件监听器是全局有效的,可以用于监控整个Ajax的交互过程。
//增加了loading图片的fruit.html
<body>
<h3>
请输入您喜欢的水果
</h3>
<div style="width: 280px; font-size: 9pt">
输入apple、banana、peach可以看到明显效果
</div>
<br />
<input id="favorite" name="favorite" tyep="text"
onblur="$('tips').hide();" />
<img alt="loading" id="loading" src="/Ajax/images/loading.gif"
style="display: none; width: 20px; height: 20px">
<div id="tips"
style="width: 160px; border: 1px solid menu; background-color: #ffffcc; display: none;"></div>
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript">
function searchFruit() {
var url = "/Ajax/fruit.jsp";
//将favorite表单域的值转化为请求参数,形如favorite=app&color=red....
var params = Form.Element.serialize('favorite');
//alert(params);
//创建Ajax.Request对象,对应于发送请求
var myAjax = new Ajax.Request(url, {
method : 'post',
parameters : params,
onComplete : showResponse,
asynchronous : true
});
}
//定义回调函数
function showResponse(request) {
//alert("回调函数被触发!");
//在tip中显示服务器的响应
$('tips').innerHTML = request.responseText;
//显示tip对象
$('tips').show();
}
//定义Ajax的全局事件处理器对象
var myGlobalHandlers = {
//刚刚开始Ajax交互时触发该属性指定的函数
onCreate:function() {
$("loading").show();
},
//交互完成时触发该属性的指定函数
onComplete:function() {
if (Ajax.activeRequestCount == 0) {
$('loading').hide();
}
},
//交互失败时触发该属性指定的函数
onFailure:function() {
alert("对不起,页面加载出错!");
}
};
//为Ajax事件绑定全局的事件处理器
Ajax.Responders.register(myGlobalHandlers);
new Form.Element.Observer("favorite", 1, searchFruit);
</script>
</body>(3)使用Ajax.Updater类标签:style http java color 使用 os
原文地址:http://blog.csdn.net/hellozpc/article/details/37901203