jsp学习

第二章htmlJavaScript简介

1,简单的例子

<html>

<head>

         <title> www.baudil.com  </title>

         <script language=”JavaScript”>

         domcument.write("<h1>hello mldn</h1>")

         alert(“hello  world”) ;

         </script>

</head>

</html>

2,空格是&nbsp换行是</br>

3,页面取值    var  name =document.myform.name.value;

                   Alert(“姓名”+name)

                   Var  sex;

                   If(document.myform.sex[0.checked]){

Sex=document.myform.sex[0].value;

}else{

Sex=document.myform.sex[1          ].value;

}

                   Alert(“性别:”+sex);

<form action=”test.htm”  methord=”post” name=”myform”>

姓名:<input  type=”text” name=”name”></br>

性别:<input  type=”radio” name=”sex” value=”男” checked>男

         <input  type=”radio” name=”sex” value=”女” >男<br>

例子:

<html>

<head>

         <title> www.baudil.com</title>

         <script language="javascript">

         function  show(){

         var  name=document.myform.name.value;

         alert("姓名"+name);

         var sex;

         sex=document.myform.sex.value;

         alert("性别"+sex);

         }

         </script>

</head>

<body>

<form action="test.htm" methord="post" name="myform">

姓名:<input type="text" name="name"></br>

性别:       <input type="radio" name="sex" value="男"checked>男

         <input type="radio" name="sex" value="女">女</br>

         <input type="button" value="提交" onclick="show()">

         <input type=”submit”>

</form>

</body>

</html>

 

 

window对象

  1. <script  language=”javascript”>

Function  fun(thisurl){

window.confirm(“确认删除?”){

alert(“您选择的“是”!”);

}else{

Alert(“您选择的是“否”!”);

}

}

</script>

<body>

<a href=”#” onclick=”fun()”>删除邮件</a>

</body>

 

  1. 重定向window.location=thisurl;

 

  1. 父子窗口间跳转

<script language=”javascript”>

Function  returnValue(thisurl){

Var city=document.myform.city.value;//取出当前选择好的信息

Var doc=window.opener.document;//取得父窗口文档

doc.parentform.result.value=city;//设置新内容

window.close();

}

</script>

<body>

<form name=”myform”>

选择:<select name=”city”>

   <option value=”北京”>北京</option>

   <option value=”上海”>上海</option>

   <option value=”深圳”>深圳</option>

   <option value=”广州”>广州</option>

   </select>

<input type=”button” value=”返回” onclick=”returnValue()”>

</form>

</body>

 

第三章xml简介

Xml所有标记都不是固定的     主要以数据保存为主

Xml解析的四种方法——1.DOM

什么是xml解析?有什么用处?

所有的xml文件都是由节点保存内容的,解析就是指从指定的节点之中将内容取出来。

W3c标准定义了两种形式:DOM、SAX主要以DOM为主

DOM(document   object  model)文档对象模型,应用程序只是通过对dom树对象模型的操作,来实现xml文档的操作。

步骤:

Package  org.lxh.xml.dom;

Import   java.io.*;

Import  org.w3c.dom.*;

Import   javax.xml.parsers.*;

Public   class  DOMDemo{

Public   static    void   main(String   args[])  throw  Exception{

//取得DocumentBuilderFactory类的对象

DocumentBuilderFactory   factory=DocumentBuliderFactory.newInstance();

//取得DocumentBuilder类的对象

DocumentBuilder    builder=factory.newDocumentBuilder();

Document  doc=builder.parse(new  file(“D:”+File.separator+”dom_demo_02.xml”));

NodeList    nl=doc.getElementsByTagName(“name”);

//输出节点

System.out.println(“姓名:”+nl.item(0).getFirstChild().getNodeValue());

}

}

dom_demo_02.xml文件:

<?xml  version=”1.0”  encoding=”GBK”?>

<addresslist>

         <name>李兴华</name>

</addresslist>

DOM操作除了可以进行解析   还可以进行文件生成

如果想生成xml文件则在创建文档的时候应该使用newDocument()方法

//取得DocumentBuilderFactory类的对象

DocumentBuilderFactory   factory=DocumentBuliderFactory.newInstance();

 //取得DocumentBuilder类的对象

DocumentBuilder    builder=factory.newDocumentBuilder();

Document  doc=builder.newDocument();

NodeList    nl=doc.getElementsByTagName(“name”);

DOM是一个被广泛使用的开发标准应该重点掌握

Xml解析的四种方法——2.SAX

Sax的主要原理(simple  APIs  for XML   操作XML的简单接口)与dom不同 的是sax采用一种顺序模式进行访问,是一种快速读取XML的操作

第五章jsp基础语法

1.注释及三种scriptlet使用

注释:显式注释客户端可以看到:<!—注释内容-->

隐式注释://   /**/    <%----%>客户端无法看到

Scriptlet  的三种方式1.<%   %>定义局部变量

2.<%!   %>定义全局常量      定义方法或者类没必要用这种

3.<%=    %>输出操作  

使用out.printl();方法输出:

<html>

<head><title>www.mldn.com</title>

</head>

<body>

<%

   Int   rows=10;

   Int   cols=10;

   Out.println(“<table boder=\”1\”  width=\”100%\”>”)

   For(int x=0;x<rows;x++)

{

Out.println(“<tr>”);

For(int y=0;y<cols;y++)

{

Out.println(“<td>”+(x*y)+”</td>”);

}

Out.println(“</table>”);

}

%></body>

</html>

这种输出方法存在的问题是:HTML代码和Java代码混在了一起。而且生成的代码没有缩进。最关键的是jsp的内容是给用户看的,美工是需要修改的,美工只能使用工具。这样的代码都是通过scriptlet解析输出的dreamweaver无法编辑

使用表达式输出:

<html>

<head><title>www.mldn.com</title>

</head>

<body>

<%

   Int   rows=10;

   Int   cols=10;

%>

<table boder=”1”   width=”100%”>

<%

   For(int x=0;x<rows;x++){

%>

<tr>

<%

For(int y=0;y<cols;y++){

%>

<td><%=x*y%></td>

<%

}

%>

</tr>

<%

}

%>

</table>

</body>

</html>

这样方便排版实现了HTML和java的分离所以一定要注意的是以后使用输出的时候坚决不能使用out.println()   而使用<%=%>

通过交互性打印表格   之前行列都是固定的   下面通过一个交互性  用户输入行数和列数打印表格新建一个print.htm

<html>

<head><title>www.mldn.com</title>

</head>

<body>

<form  action=”print_table.jsp”  methord=”post”>

<table  boder=”1”  with=”100%”>

<tr>

   <td>请输入要打印表格的行数:</td>

   <td><input  type=”text”  name=”row”></td>

</tr>

<tr>

   <td>请输入要打印表格的列数:</td>

   <td><input  type=”text”  name=”col”></td>

</tr>

<tr>

   <td  colspan=2><input  type=”submit”  value=”显示”>

<input  type=”reset”  value=”重置”> </td>

</tr>

</body>

</html>

 

新建一个print_table.jsp

<html>

<head><title>www.mldn.com</title>

</head>

<body>

<%

   Int   rows=0;

   Int   cols=0;

Try{

Rows=Integer.parseInt(request.getParameter(“row”));

cols=Integer.parseInt(request.getParameter(“col”));

}catch(Exception  e){}

%>

<table boder=”1”   width=”100%”>

<%

   For(int x=0;x<rows;x++){

%>

<tr>

<%

For(int y=0;y<cols;y++){

%>

<td><%=x*y%></td>

<%

}

%>

</tr>

<%

}

%>

</table>

</body>

</html>

以后只要是输出都使用<%=%>

posted on 2013-08-20 10:34  dalong0913  阅读(205)  评论(0)    收藏  举报