日期:2014-05-16 浏览次数:20442 次
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script>
/***
* add by 张行 2010-12-16
* 面向对象的JavaScript
*
*/
function $(id)
{
return document.getElementById(id).value;
}
// 使用立即方法利用闭包创建私有静态成员方法
var Book = (function ()
{
function checkIsbn(isbn, msg) // 私有静态成员方法 校验方法
{
if (msg === "ok")
{
if ($(isbn) === "")
{
return "isbn不能为空!";
}
}
return msg;
}
function checkName(name, msg)
{
if (msg === "ok")
{
if ($(name) !== "zxBook")
{
return "书名必须为zxBook!";
}
}
return msg;
}
// 使用闭包特性
return function ()
{
// 私有属性
var isbn,name,content,pageNum,msg="ok";
/************* 特权set方法***************/
this.setIsbn = function (strIsbn)
{
msg = checkIsbn(strIsbn, msg)
if (msg === "ok")
{
isbn = $(strIsbn);
}
};
this.setName = function (strName)
{
msg = checkName(strName, msg)
if (msg === "ok")
{
name = $(strName);
}
};
this.setContent = function (strContent)
{
content = $(strContent) || "nullContent";
};
this.setPageNum = function (strPageNum)
{
pageNum = $(strPageNum) || "0";
};
/************* 特权get方法***************/
this.getIsbn = function ()
{
return isbn;
};
this.getName = function ()
{
return name;
}
this.getContent = function ()
{
return content;
}
this.getPageNum = function ()
{
return pageNum;
}
this.getMsg = function()
{
return msg;
}
}
})() ;
// 构建查询串
Book.prototype.createQryString = function (isbn, name, content, pageNum)
{
var str = "?" + isbn + "=" + this.getIsbn() + "&" + name + "=" + this.getName() +
"&" + content + "=" + this.getContent() + "&" + pageNum + "=" + this.getPageNum();
return str;
}
var bookService = {
"add" : function ()
{
var book = new Book();
book.setIsbn('isbn');
book.setName('name');
book.setContent('content');
book.setPageNum('pageNum');
if (book.getMsg() != "ok")
{
alert(book.getMsg());
return false;
}
else
{
alert(book.createQryString('ISBN','NAME','CONTENT','NUM'));
/**new Ajax.Request('${request.contextPath}/hehe.action' + book.createQryString('ISBN','NAME','CONTENT','NUM'), {
method: 'post',
onSuccess: function(transport)
{
alert(transport.responseText);
}
});**/
}
},
"del" : function () {},
"update" : function (){},
"search" : function (){}
}
function ready()
{
document.getElementById('submitBtn').attachEvent('onclick', bookService.add);
}
</script>
</HEAD>
<BODY onload='ready();'>
ISBN : <input type="text" name="isbn"/>
书名: <input type="text" name="name"/>
内容: <input type="text" name="content"/>
页数: <input type="text" name="pageNum"/>
<input type="button" name="submitBtn" value=" 提 交 ">
</BODY>
</HTML>
?