js宝典学习笔记

1.document.write(""); 输出语句

2.JS中的注释为 //

3.传统的HTML文档顺序是:document->html->(head,body)

4.一个浏览器窗口中的DOM顺序是:window->(navigator,screen,history,location,document)

5.得到表单中元素的名称和值:document.getElementById("表单中元素的ID号").name(或value)

6.一个小写转大写的JS: document.getElementById("output").value = document.getElementById("input").value.toUpperCase();

7.JS中的值类型:String,Number,Boolean,Null,Object,Function

8.JS中的字符型转换成数值型:parseInt(string,radix), parseFloat(string)

9.JS中的数字转换成字符型:(""+变量)

10.JS中的取字符串长度是:(length)

11.JS中的字符与字符相连接使用+号.

12.JS中的关系运算符有: ==等于, !=不等于, >, >=, <, <=

数学运算符有: +, -, *, / , %(模除(求余数)), -(取反), ++, --

逻辑运算符: &&, ||, !

带操作的赋值:+=, -=, /=, *=

问号表达式:?:

13.JS中声明变量使用:

var来进行声明

14.JS中的判断语句结构:

if(condition){}else{}

15.JS中的循环结构:

for([initial expression];[condition];[upadte expression]) {inside loop}

16.循环中止的命令是:break

.switch语句:

switch(表达式) {

case 表达式1:

语句1;

break;

case 表达式2:

语句2;

break;

default:

语句3;

}

17.JS中的函数定义:

function functionName([parameter],...){statement[s]}

18.当文件中出现多个form表单时.可以用document.forms[0], document.forms[1]来代替.

19.窗口:

打开窗口window.open(),

关闭一个窗口:window.close(), 窗口本身:self

20.状态栏的设置:

window.status="字符";

21.弹出提示信息:

window.alert("字符");

22.弹出确认框:

window.confirm();

23.弹出输入提示框:

window.prompt();

24.指定当前显示链接的位置:

window.location.href="URL"

25.取出窗体中的所有表单的数量:

document.forms.length

26.关闭文档的输出流:

document.close();

27.字符串追加连接符:+=

28.创建一个文档元素:

document.createElement(),document.createTextNode()

29.得到元素的方法:

document.getElementById()

30.设置表单中所有文本型的成员的值为空:

var form = window.document.forms[0]

for (var i = 0; i<form.elements.length;i++){

if (form.elements[i].type == "text"){

form.elements[i].value = "";

}

}

31.复选按钮在JS中判断是否选中:

document.forms[0].checkThis.checked (checked属性代表为是否选中返回TRUE或FALSE)

32.单选按钮组(单选按钮的名称必须相同):

取单选按钮组的长度document.forms[0].groupName.length

33.单选按钮组判断是否被选中也是用checked.

34.下

拉列表框的值:

document.forms[0].selectName.options[n].value (n有时用下拉列表框名称加上.selectedIndex来确定被选中的值)

35.字符串的定义:

var myString = new String("This is lightsword");

36.字符串转成大写:

string.toUpperCase();

字符串转成小写:

string.toLowerCase();

37.返回字符串2在字符串1中出现的位置:

String1.indexOf("String2")!=-1则说明没找到.

38.取字符串中指定位置的一个字符:

StringA.charAt(9);

39.取出字符串中指定起点和终点的子字符串:

stringA.substring(2,6);

40.数学函数:

Math.PI(返回圆周率)

Math.SQRT2(返回开方)

Math.max(value1,value2)返回两个数中的最大值

Math.pow(value1,10)返回value1的十次方

Math.round(value1)四舍五入到整数函数

Math.floor(Math.random()*(n+1))返回随机数

41.定义日期型变量:

var today = new Date();

var m_date = new Date(numYear,numMonth,numDay);

42.日期函数列表:

dateObj.getTime()得到时间

dateObj.getYear()得到年份

dateObj.getFullYear()得到四位的年份

dateObj.getMonth()得到月份[从0开始]

dateObj.getDate()得到日

dateObj.getDay()得到日期几

dateObj.getHours()得到小时

dateObj.getMinutes()得到分

dateObj.getSeconds()得到秒

dateObj.setTime(value)设置时间

dateObj.setYear(val)设置年

dateObj.setMonth(val)设置月

dateObj.setDate(val)设置日

dateObj.setDay(val)设置星期几

dateObj.setHours设置小时

dateObj.setMinutes(val)设置分

dateObj.setSeconds(val)设置秒 [注意:此日期时间从0开始计]

43.FRAME的表示方式:

[window.]frames[n].ObjFuncVarName,

frames["frameName"].ObjFuncVarName,

frameName.ObjFuncVarName

44.parent代表父亲对象,top代表最顶端对象

45.打开子窗口的父窗口为:opener

46.表示当前所属的位置:this

47.当在超链接中调用JS函数时用:(javascript :)来开头后面加函数名

48.在老的浏览器中不执行此JS:<!-- //-->

49.引用一个文件式的JS:<script type="text/javascript" src="aaa.js"></script>

50.指定在不支持脚本的浏览器显示的HTML:<noscript></noscript>

51.当超链和ONCLICK事件都有时,则老版本的浏览器转向a.html,否则转向b.html.例:<a href="a.html" οnclick="location.href='b.html';return false">dfsadf</a>

52.JS的内建对象有:Array,Boolean,Date,Error,EvalError,Function,Math,Number,Object,RangeError,ReferenceError,RegExp,String,SyntaxError,TypeError,URIError

53.JS中的换行:\n

54.窗口全屏大小:

<script>

function fullScreen()

{ this.moveTo(0,0);

this.outerWidth=screen.availWidth;

this.outerHeight=screen.availHeight;

}

window.maximize=fullScreen;

</script>

在javascript中得到当前窗口的高和宽

<body><SCRIPT LANGUAGE="JavaScript">

var s = "";

s += "\r\n网页可见区域宽

:"+ document.body.clientWidth;

s += "\r\n网页可见区域高:"+ document.body.clientHeight;

s += "\r\n网页可见区域宽:"+ document.body.offsetWidth +" (包括边线的宽)";

s += "\r\n网页可见区域高:"+ document.body.offsetHeight +" (包括边线的宽)";

s += "\r\n网页正文全文宽:"+ document.body.scrollWidth;

s += "\r\n网页正文全文高:"+ document.body.scrollHeight;

s += "\r\n网页被卷去的高:"+ document.body.scrollTop;

s += "\r\n网页被卷去的左:"+ document.body.scrollLeft;

s += "\r\n网页正文部分上:"+ window.screenTop;

s += "\r\n网页正文部分左:"+ window.screenLeft;

s += "\r\n屏幕分辨率的高:"+ window.screen.height;

s += "\r\n屏幕分辨率的宽:"+ window.screen.width;

s += "\r\n屏幕可用工作区高度:"+ window.screen.availHeight;

s += "\r\n屏幕可用工作区宽度:"+ window.screen.availWidth;

alert(s);

</SCRIPT>

55.JS中的all代表其下层的全部元素

56.JS中的焦点顺序:document.getElementById("表单元素").tabIndex = 1

57.innerHTML的值是表单元素的值:如<p id="para">"how are <em>you</em>"</p>,则innerHTML的值就是:how are <em>you</em>

58.innerText的值和上面的一样,只不过不会把<em>这种标记显示出来.

59.contentEditable可设置元素是否可被修改,isContentEditable返回是否可修改的状态.

60.isDisabled判断是否为禁止状态.disabled设置禁止状态

61.length取得长度,返回整型数值

62.addBehavior()是一种JS调用的外部函数文件其扩展名为.htc

63.window.focus()使当前的窗口在所有窗口之前.

64.blur()指失去焦点.与FOCUS()相反.

65.select()指元素为选中状态.

66.防止用户对文本框中输入文本:

οnfοcus="this.blur()"

67.取出该元素在页面中出现的数量:

document.all.tags("div(或其它HTML标记符)").length

68.JS中分为两种窗体输出:

模态和非模态.window.showModaldialog(),window.showModeless()

69.状态栏文字的设置:

window.status='文字',默认的状态栏文字设置:window.defaultStatus = '文字.';

70.添加到收藏夹:

external.AddFavorite("http://www.dannyg.com","jaskdlf");

71.JS中遇到脚本错误时不做任何操作:

window.onerror = doNothing; 指定错误句柄的语法为:window.onerror = handleError;

72.JS中指定当前打开窗口的父窗口:

window.opener,支持opener.opener...的多重继续.

73.JS中的self指的是当前的窗口

75.JS中的top指的是框架集中最顶层的框架

76.JS中关闭当前的窗口:

window.close();

77.JS中提出是否确认的框:

if(confirm("Are you sure?")){alert("ok");}else{alert("Not Ok");}

78.JS中的窗口重定向:

window.navigate("http://www.sina.com.cn");

79.JS中的打印:

window.print()

80.JS中的提示输入框:

window.prompt("message","defaultReply");

81.JS中的窗口滚动条:

window.scroll(x,y)

82.JS中的窗口滚动到位置:

window.scrollby

83.JS中设置计时器:

t1 = setInterval("expr",msecDelay)

t1 = setInterval(funcRef,msecDelay)

t2 = setTimeout(funcRef,msecDelay)

setInterval函数是按指定时间间隔时间反复执行funcRef表达式(通常是调用程序)

setTimeout 函数是在指定时间后执行funcRef表达式,仅执行一次

清除计时器:

clearInterval(t1);

clearTimeout(t2);

84.JS中的模态显示在IE4+行,在NN中不行:showModalDialog("URL"[,arguments][,features]);

85.JS中的退出之前使用的句柄:

function verifyClose()

{event.returnValue="we really like you and hope you will stay longer.";

}

window.οnbefοreunlοad=verifyClose;

86.当窗体第一次调用时使用的文件句柄:

onload()

87.当窗体关闭时调用的文件句柄:

onunload()

88.window.location的属性:

protocol(http:)

hostname(www.example.com)

port(80)

host(www.example.com:80)

pathname("/a/a.html")

hash("#giantGizmo",指跳转到相应的锚记)

href(全部的信息)

89.window.location.reload()刷新当前页面.

90.window.history.back()返回上一页

window.history.forward()返回下一页

window.history.go(返回第几页,也可以使用访问过的URL)

91.document.write()不换行的输出

document.writeln()换行输出

92.document.body.noWrap=true;防止链接文字折行.

93.变量名.charAt(第几位),取该变量的第几位的字符.

94."abc".charCodeAt(第几个),返回第几个字符的ASCii码值.

95.字符串连接:string.concat(string2),或用+=进行连接

96.变量.indexOf("字符",起始位置),返回第一个出现的位置(从0开始计算)

97.string.lastIndexOf(searchString[,startIndex])最后一次出现的位置.

98.string.match(regExpression),判断字符是否匹配.

99.string.replace(regExpression,replaceString)替换现有字符串.

如果regExpression是个字符串,则仅替换找到的第一个匹配串;

如果需要替换所有,则regExpression必须是正则表达式,

例如:

var s = "2009-10-10"

s = s.replace(/-/g, "/"); //这样的话,3个'-'都会被替换为'/'

100.string.split(分隔符)返回一个数组存储值.

分隔符可以是单个字符或字符串,也可以是正则表达式;如 "08 07.06/5".split(/[.-/ ]/) 的结果是{08, 07, 06, 5}

101.string.substr(start[,length])取从第几位到指定长度的字符串.

102.string.toLowerCase()使字符串全部变为小写.

103.string.toUpperCase()使全部字符变为大写.

104.parseInt(string[,radix(代表进制)])强制转换成整型.

105.parseFloat(string[,radix])强制转换成浮点型.

106.isNaN(变量):测试是否为数值型.

107.定义常量的关键字:con

st,定义变量的关键字:var

108.js中表格的有关操作:

1、增加行:

var newRow = tbl.insertRow(tbl.rows.length);

其中tbl为所要操作的表格对象,默认增加到表格末尾

2、给指定格子(cell)填数据:

var newCell = newRow.insertCell(0); //得到新建表格的第一个格子

newCell.innerHTML = 'Hello World!'; //填入字符串

3、删除指定位置行:

tbl.deleteRow(rowIndex); //删除计数为rowIndex行,tabl同样为表格对象

4、插入行到指定位置:

var newRow = tbl.insertRow(rowIndex); //rowIndex为指定的位置

var newCell = newRow.insertCell(0);

newCell.innerHTML = 'Hello World! insert';

另外,表的所有行可通过表格对象的rows属性得到,返回为一个由行组成的数组。

在删除指定行时,如果行的位置超出表的行数或者位置小于0都将抛出异常,对于插入指定行也是同样的。

109. eval(s)函数的用法:eval(s) 接受一个字符串参数,功能是把这个字符串当成一个表达式并返回该表达式的值。

110. 选中文本框内所有内容:

TextObj.select();

111. 鼠标点击后选中所有内容:

οnclick="javascript:this.select();"

111. JavaScript控制文本被选中

<html>

<head>

<title>文本被选中</title>

<script type="text/javascript">

function selectData() //createTextRange只在具体对象时才能创建,createRange要用document.selection创建,否则提示不支持该函数

{

var rng = $("ipt").createTextRange(); //获取一个需要操作对象的TextRange

rng.collapse(); //默认true收缩

rng.select(); //因为已收缩Range,所以select后会将光标移到首部

var sel = document.selection.createRange(); //如果需要选中文本中的一部分,需要创建Range

sel.moveStart("character",$("ipt").value.length-2); //移动开始点

sel.moveEnd("character",2); //移动结束点

sel.select(); //选中开始点到结束点间的字符

}

function selectItem1(){

var mydiv = document.getElementById("myDiv");

var range= document.body.createTextRange();

range.moveToElementText(mydiv)

range.moveEnd('character',-1);

range.moveStart('character',-1);

range.select();

}

function selectItem2(){

var obj = document.getElementsByName("textRange")[0];

var range = obj.createTextRange()

range.moveStart("character",0);

range.select();

}

</script>

</head>

<body>

<div id="myDiv" οnclick="selectItem()">

再过二十天左右就要面临高考了,1321321有许多考222生们目前正在紧张的复习当中。但是在北京出现...

</div>

<input type="button" value="选中上面的文本" οnclick="selectItem1()" />

</br>

<input type="text" name="textRange" size="100" value="要检查您的网络连接,请单击工具菜单,然后单击 Internet 选项。">

</br>

<input type="button" value="选中上面的

文本" οnclick="selectItem2()" />

</body>

</html>

//--------------------------------------------------------------------------------------------

程序代码

//去左空格;

function ltrim(s){

return s.replace( /^\s*/, "");

}

程序代码

//去右空格;

function rtrim(s){

return s.replace( /\s*$/, "");

}

程序代码

//左右空格;

function trim(s){

return rtrim(ltrim(s));

}

程序代码

//替换

function replace(s, t, u) {

i = s.indexOf(t);

r = "";

if (i == -1) return s;

r += s.substring(0,i) + u;

if ( i + t.length < s.length)

r += replace(s.substring(i + t.length, s.length), t, u);

return r;

}

程序代码

//检查非法字符

//str 要检查的字符

//badwords 非法字符 &|<>=

function checkbadwords(str, badwords) {

if (typeof (str) != "string" || typeof (badwords) != "string") {

return (false);

}

for (i=0; i<badwords.length; i++) {

bad = badwords.charAt(i);

for (j=0; j<str.length; j++) {

if (bad == str.charAt(j)) {

return false;

break;

}

}

}

return true;

}

程序代码

//检查合法字符,限制只能输入的字符

//str 要检查的字符

//goodwords 合法字符 1234567890abcdefghijklmnopqrstuvwxyz

function checkgoodwords(str, goodwords) {

if (typeof (str) != "string" || typeof (goodwords) != "string") {

return (false);

}

for (i=0; i<str.length; i++) {

this_str = str.charAt(i);

for (j=0; j<goodwords.length; j++) {

if (this_str == goodwords.charAt(j)) {

break;

}

if(j==goodwords.length-1){

return false;

}

}

}

return true;

}

程序代码

//函 数 名:chkinteger

//功能介绍:检查是否为数字

//参数说明:要检查的字符串

//返 回 值:false:不是 true:是

function chkinteger(checkStr) {

var checkOK = "0123456789+-";

var allValid = true;

for (i=0; i<checkStr.length; i++) {

ch = checkStr.charAt(i);

if (checkOK.indexOf(ch) == -1) {

allValid = false;

break;

}

if ((ch == '+' || ch == '-') && i>0) {

allValid = false;

break;

}

}

return (allValid);

}

程序代码

//函 数 名:chklength

//功能介绍:检查字符串的长度

//参数说明:要检查的字符串

//返 回 值:字节长度值

function chklength(checkStr) {

var n = 0;

for (i=0; i<checkStr.length; i++) {

chcode = checkStr.charCodeAt(i);

if (chcode>=0 && chcode<=255) {

n++;

} else {

n += 2;

}

}

return (n);

}

程序代码

//复选框全选和不全选

//使用方法:

//<input name="chkAll" type="checkbox" id="chkAll" οnclick=CheckAll(this.form) value="checkbox">

function unselectall()

{

if(document.myform.chkAll.checked){

document.myform.chkAll.checked = document.myform.chkAll.checked&0;

}

}

function CheckAll(form)

{

for (var i=0;i<form.elements.length;i++)

{

var e = form.elements[i];

if (e.Name != "chkAll"&&e.disabled==false)

e.checked = form.chkAll.checked;

}

}

程序代码

//check date

//return: 1,days 2,false

//2005-12-19 2005-12-29

function checkdate(start_date,end_date){

//al

ert("start_date:["+start_date+"] end_date:["+end_date+"]");

//isnull

if(start_date=="" || end_date==""){

//alert("false");

return false;

}

var strSeparator = "-"; //split symbol

//is-

if(start_date.charAt(4)!=strSeparator && start_date.charAt(7)!=strSeparator && end_date.charAt(4)!=strSeparator && end_date.charAt(7)!=strSeparator){

//alert(start_date.charAt(7));

return false;

}

var strDateArrayStart;

var strDateArrayEnd;

strDateArrayStart = start_date.split(strSeparator);

strDateArrayEnd = end_date.split(strSeparator);

var strDateS = new Date(strDateArrayStart[0] + "/" + strDateArrayStart[1] + "/" + strDateArrayStart[2]);

var strDateE = new Date(strDateArrayEnd[0] + "/" + strDateArrayEnd[1] + "/" + strDateArrayEnd[2]);

//check date

var intDay;

intDay = (strDateE-strDateS)/(1000*3600*24);

//alert(intDay);

return intDay;

}

程序代码

//checkdate_month

//return: 1,true 2,false

//2005-12-19 2005-12-29

//month: number

function checkdate_month(start_date,end_date,month){

//alert("start_date:["+start_date+"] end_date:["+end_date+"]");

//isnull

if(start_date=="" || end_date=="" || month==""){

//alert("false");

return false;

}

var strSeparator = "-"; //split symbol

//is-

if(start_date.charAt(4)!=strSeparator && start_date.charAt(7)!=strSeparator && end_date.charAt(4)!=strSeparator && end_date.charAt(7)!=strSeparator){

//alert(start_date.charAt(7));

return false;

}

var strDateArrayStart;

var strDateArrayEnd;

strDateArrayStart = start_date.split(strSeparator);

strDateArrayEnd = end_date.split(strSeparator);

var strDateS = new Date(strDateArrayStart[0] + "/" + strDateArrayStart[1] + "/" + strDateArrayStart[2]);

var strDateE = new Date(strDateArrayEnd[0] + "/" + strDateArrayEnd[1] + "/" + strDateArrayEnd[2]);

//check date

var intDay;

intDay = (strDateE-strDateS)/(1000*3600*24);

//alert(intDay);

var intMonth = intDay/30;

if(intMonth>month){

return false;

}

return true;

}

1:16 | 添加评论 | 固定链接 | 引用通告 (0) | 写入日志 | 计算机与 Internet

4月22日

JavaScript

<script language="JavaScript">

function log_out() {

top.location.href = "logout.jsp";

}

<!--

var openedid;

var openedid_ft;

var flag=0,sflag=0;

var folderCodes = new Array('Personal','Product','Order','Lottery','Bonus','Friend','Plan','Complain','Survey');

function clickHandler() {

var targetid,srcelement,targetelement;

var strbuf;

srcelement=window.event.srcElement;

if(srcelement.className=="outline") { //在Menu.asp文件如果 class="outline" 则执行

//将它对应的id值加d得到一个新的id值 "1out6d"

targetid=srcelement.id+"d";

//alert(targetid);

//退出系统

if (targetid == "Logoutd") {

if (confirm("请确实是否退出会员系统?"))

log_out() ;

return;

}

targetelement=document.all(targetid);

// 关闭其他

for (i=0; i<folderCodes.length; i++)

document.all(folderCodes[i]+"d").style.display='none

';

targetelement.style.display='';

/*

if (targetelement.style.display=="none") { //如果 style="display:none" 则执行

targetelement.style.display=''; //将 display 赋以空值表示菜单以打开

strbuf=srcelement.src;

if(strbuf.indexOf("images/plus.gif")>-1) { //进行图标变换

srcelement.src="images/tree_plus.gif";

}

else {

srcelement.src="images/tree_plus.gif";

}

}

else {

targetelement.style.display="none";

strbuf=srcelement.src;

if(strbuf.indexOf("images/tree_plus.gif")>-1) {

srcelement.src="images/tree_plus.gif";

}

else {

srcelement.src="images/tree_plus.gif";

}

}

*/

}

if(srcelement.className=="dirclick") {

targetid=srcelement.id+"img";

targetelement=document.all(targetid);

if(flag==1) {

if(openedid) {

openedid.src="images/tree_dir.gif";

}

openedid_ft.style.background="#ffffff";

openedid_ft.style.color="#0000ff";

}

if(sflag==1) {

openedid_ft.style.background="#ffffff";

openedid_ft.style.color="#0000ff";

}

targetelement.src="images/a.gif";

srcelement.style.background="#000080";

srcelement.style.color="#ffffff";

openedid=targetelement;

openedid_ft=srcelement;

flag=1;

sflag=0;

}

if(srcelement.className=="serviceclick") {

targetid=srcelement.id+"img";

targetelement=document.all(targetid);

if(flag==1) {

if(openedid) {

openedid.src="images/a.gif";

}

openedid_ft.style.background="#ffffff";

openedid_ft.style.color="#0000ff";

//targetelement.src="images/tree_dir.gif";

}

if(sflag==1) {

openedid_ft.style.background="#ffffff";

openedid_ft.style.color="#0000ff";

}

srcelement.style.background="#000080";

srcelement.style.color="#ffffff";

openedid=targetelement;

openedid_ft=srcelement;

sflag=1;

flag=0;

}

}

document.onclick = clickHandler;

//-->

</script>

//===============================checkbox============//

//全选。form.selectall.checked为全选按钮的状态。

<SCRIPT language=JavaScript>

<!--

function CheckAll(form)

{

for (var i=0;i<form.elements.length;i++)

{

var e = form.elements[i];

if (e.name != 'selectall')

e.checked = form.selectall.checked;

}

}

//-->

</SCRIPT>

//取checkbox的值

String[] name = request.getParameterValues("myCheckBox");

//注:这个"myCheckBox"值就是上一个页面里面对应的checkbox的name对应的值。

for(int k=0;k<name.length;k++){

  String id = name[k];

}

//==================================================//

0:36 | 添加评论 | 固定链接 | 引用通告 (0) | 写入日志 | 计算机与 Internet

4月21日

URL乱码问题

1 表单提交的数据,用request.getParameter(“xxx”)返回的字符串为乱码或者??

2 直接通过url如http://lo

calhost/a.jsp?name=中国,这样的get请求在服务端用request. getParameter(“name”)时返回的是乱码;按tomcat4的做法设置Filter也没有用或者用request.setCharacterEncoding("GBK");也不管用

原因:

1 tomcat的j2ee实现对表单提交即post方式提示时处理参数采用缺省的iso-8859-1来处理

2 tomcat对get方式提交的请求对query-string 处理时采用了和post方法不一样的处理方式。(与tomcat4不一样,所以设置setCharacterEncoding(“gbk”))不起作用。

解决办法:

首先所有的jsp文件都加上:

1 实现一个Filter.设置处理字符集为GBK。(在tomcat的webapps/servlet-examples目录有一个完整的例子。请参考web.xml和SetCharacterEncodingFilter的配置。)

1)只要把%TOMCAT安装目录%/ webapps\servlets-examples\WEB-INF\classes\filters\SetCharacterEncodingFilter.class文件拷到你的webapp目录/filters下,如果没有filters目录,就创建一个。

2)在你的web.xml里加入如下几行:

<filter> <filter-name>Set Character Encoding</filter-name> <filter-class>filters.SetCharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>GBK</param-value> </init-param> </filter> <filter-mapping> <filter-name>Set Character Encoding</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>

3)完成.

2 get方式的解决办法

1) 打开tomcat的server.xml文件,找到区块,加入如下一行:

URIEncoding=”GBK”

完整的应如下:

<Connector port="80" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="GBK"/>

2)重启tomcat,一切OK。

执行如下jsp页页测试是否成功

<%@ page contentType="text/html;charset=gb2312"%>

<%@ page import="java.util.*"%>

<% String q=request.getParameter("q"); q = q == null? "没有值" : q; %>

<HTML><HEAD><TITLE>新闻列表显示</TITLE>

<META http-equiv=Content-Type content="text/html; charset=gb2312">

<META http-equiv=pragma content=no-cache><body>你提交了:<%=q%>

<form action="tcnchar.jsp" method="post">

输入中文: <input type="text" name="q">

<input type="submit" value="确定"><br>

<a href="tcnchar.jsp?q=中国">通过get方式提交</a>

</form></BODY></HTML>

测试结果如果你输入文本框或者点超链都会显示:你提交了”中国”,说明成功!!!!!

提交表单:

this.form.submit(); //直接提交表单

this.form.onsubmit(); //调用form的onsubmit方法

this.form.fireEvent('onsubmit'); //同上,

onload事件

window.οnlοad=function(){

self.moveTo(0,0)

self.resizeTo(screen.width,screen.height)

}

焦点事件

function window.onfocus(){

if(winPopup){

winPopup.focus();

}

}

失去焦点事件

function window.onblur(){

}

判断一个用window.open打开的窗口是否已经关闭:

首先要把open

的新窗口赋予一个变量:

winPopup = window.open("", "", "")

if(winPopup){ //判断窗口是否被打开过:

if(!winPopup.closed){ //判断该窗口是否已关闭

}

}

UrlEncode函数

function UrlEncode(str){

var ret="";

var strSpecial="!\"#$%&'()*+,/:;<=>?[]^`{|}~%";

for(var i=0;i<str.length;i++){

var chr = str.charAt(i);

var c=str2asc(chr);

if(parseInt("0x"+c) > 0x7f){

ret+="%"+c.slice(0,2)+"%"+c.slice(-2);

}else{

if(chr==" ")

ret+="+";

else if(strSpecial.indexOf(chr)!=-1)

ret+="%"+c.toString(16);

else

ret+=chr;

}

}

return ret;

}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值