利用XML的数æ®ç»‘定和‹¹è§ˆå™¨çš„自动昄¡¤ºåŠŸèƒ½å¯ä»¥å®žçŽ°ä¸€ä¸ªæ— åˆäh–°çš„æ•°æ®æµè§ˆï¼Œå›_‰åŽç¿»™åüc€é¡µç 定ä½çš„功能åQŒæœ¬äººå®žçŽ°æ—¶é‡‡ç”¨JSPåQ‹XML的方å¼ã€?br />具体的效果å¯ä»¥å‚看:http://guide.pconline.com.cn/comment/topic.jsp?id=10178
相关内容åQ?br />  通过数殾l‘定åQŒå¯ä»¥æŠŠä¸€ä¸ªXML文档链接åˆîC¸€ä¸ªHTML™åµï¼Œç„¶å޾l‘å®šæ ‡å‡†çš„HTMLå…ƒç´ åQŒä¾‹å¦‚SPANã€TABLEåQŒåˆ°ç‹¬ç«‹çš„XMLå…ƒç´ ã€‚HTMLå…ƒç´ ä¼šè‡ªåŠ¨æ˜¾½Cºæ‰€¾l‘定的XMLå…ƒç´ çš„å†…å®V€?br />  使用数殾l‘å®šçš„ä¸¤ä¸ªä¸»è¦æ¥éª¤ï¼š
  1åQ‰é“¾æŽ¥XMLæ–‡æ¡£åˆ°æƒ³è¦æ˜¾½CºXMLæ•°æ®çš„HTML™åüc€?br />     有两¿U方法:
       åQˆAåQ‰é€šè¿‡åœ¨HTML™åµä¸åŒ…括å䨓XMLçš„HTMLå…ƒç´ æ¥å®Œæˆã€‚例如:<XML ID="dsoBook" SRC="Book.xml"></XML>åQŒHTML™åµä¸çš„æŸä¸ªå…ƒç´ ï¼ˆdsoBookåQ‰æŠŠXML文档ä¸Book.xml链接到该™åüc€?br />       åQˆBåQ‰ä‹É用数æ®å²›çš„æ–¹æ³•。例如:
           <HTML><HEAD>
            <TITLE></TITLE>
           </HEAD>
           <BODY><XML ID="dsoInventory">...</XML>
           </BODY></HTML>
  2åQ‰ç»‘定HTMLå…ƒç´ åˆ°XMLå…ƒç´ ã€‚å½“¾l‘定一个HTMLå…ƒç´ åˆîC¸€ä¸ªXMLå…ƒç´ æ—Óž¼ŒHTMLå…ƒç´ ä¼šè‡ªåŠ¨æ˜¾½Cºæ‰€¾l‘定的XMLå…ƒç´ çš„å†…å®V€‚例如:<SPAN DATASRC="#dsoBook" DATAFLD="AUTHOR"></SPAN>åQŒç»“果,HTMLå…ƒç´ SPAN昄¡¤ºå…ƒç´ AUTHOR的内å®V€?br />ã€€ã€€ä¸‹é¢æ˜¯ä¸€ä¸ªXML数殾l‘定的例å:
   <!-- File Name: Inventory Table.htm -->
 <HTML>
 <HEAD>
   <TITLE>Book Inventory</TITLE>
 </HEAD>
 <BODY>
   <XML ID="dsoInventory" SRC="Inventory.xml"></XML>
   <H2>Book Inventory</H2>
   <TABLE DATASRC="#dsoInventory" BORDER="1" CELLPADDING="5">
      <THEAD>
  <TH>Title</TH>
  <TH>Author</TH>
  <TH>Binding</TH>
  <TH>Pages</TH>
  <TH>Price</TH>
      </THEAD>   Â
      <TR ALIGN="center">
  <TD><SPAN DATAFLD="TITLE"
     STYLE="font-style:italic"></SPAN></TD>
  <TD><SPAN DATAFLD="AUTHOR"></SPAN></TD>
  <TD><SPAN DATAFLD="BINDING"></SPAN></TD>
  <TD><SPAN DATAFLD="ID"></SPAN></TD>
  <TD><SPAN DATAFLD="PRICE"></SPAN></TD>
      </TR>
   </TABLE>
 </BODY>
/////////////////////////////////////////////////////
 <?xml version="1.0"?>
 <!-- File Name: Inventory.xml -->
 <INVENTORY>
   <BOOK>
      <TITLE>The Adventures of Huckleberry Finn</TITLE>
      <AUTHOR>Mark Twain</AUTHOR>
      <BINDING>mass market paperback</BINDING>
      <ID>298</ID>
      <PRICE>$5.49</PRICE>
   </BOOK>
   <BOOK>
      <TITLE>Leaves of Grass</TITLE>
      <AUTHOR>Walt Whitman</AUTHOR>
      <BINDING>hardcover</BINDING>
      <ID>462</ID>
      <PRICE>$7.75</PRICE>
   </BOOK>
 </INVENTORY>
////////////////////////////////////////////////////////////
利用XML数殾l‘定实现™åµé¢æ— 刷新的数残¹è§ˆå…·ä½“åšæ³•åQ?br />1)在XML.jspä¸å¾ç«‹æ•°æ®å²›ã€?lt;XML id="dsoInventory" src="xmlsrc.jsp" ></XML>åQŒå…¶ä¸xmlsrc.jspæ–‡äšg是通过讉K—®æ•°æ®åº“厘q”回XMLæ ¼å¼çš„æ•°æ®ï¼Œå®žçŽ°æ—¶åº”è¯¥åŒ…å«æ±‚总记录数æ®ã€æ¯™å‰|˜¾½Cºæ¡æ•°ã€æ€»é¡µæ•°ã€åˆ†™åµè¿”回数æ®ç‰æ–ÒŽ³•ã€?br /> ˜q”å›žçš„æ•°æ®æ ¼å¼å¦‚åQ?br /> <?xml version="1.0" encoding="GBK" ?>
 <INVENTORY>
 <onePageRows>5</onePageRows>
 <totalRows>21</totalRows>
 <totalPages>5</totalPages>
 <intCurrentPage>1</intCurrentPage>
 <BOOK>
 <TITLE>The Adventures of Huckleberry Finn</TITLE>
 <AUTHOR>Mark Twain</AUTHOR>
 <BINDING>mass market paperback</BINDING>
 <ID>298</ID>
 <PRICE>$5.49</PRICE>
 </BOOK>
 <BOOK>
 <TITLE>Leaves of Grass</TITLE>
 <AUTHOR>Walt Whitman</AUTHOR>
 <BINDING>hardcover</BINDING>
 <ID>462</ID>
 <PRICE>$7.75</PRICE>
 </BOOK>
 </INVENTORY>
使用时å¯ä»¥æ ¹æ®å…·ä½“情况返回相应的XMLæ•°æ®ã€?br />2åQ‰åœ¨™åµå†…¾l‘定HTMLå…ƒç´ åˆ°XMLå…ƒç´ ,借助TABLE昄¡¤ºã€?br /><table id="cmmTbl" datasrc="dsoInventory" datafld="BOOk" width="760" border="0" cellspacing="1" cellpadding="2" align="center" bgcolor="#aaaaaa"  style="border-collapse: collapse" bordercolor="#333333" >
         <thead>
         <tr bgcolor="#FFCC66">
           <td HEIGHT="24" BGCOLOR="#f0f9ff" WIDTH="60" >
             <div align="center"><b>查看</b></div>
   </td>
           <td HEIGHT="24" BGCOLOR="#f0f9ff" WIDTH="60" >
             <div align="center"><b>作�lt;/b></div>
   </td>
   <td width="580" BGCOLOR="#f0f9ff">
     <div align="center"><b>æ ‡é¢˜</b></div>
   </td>
   <td width="60" BGCOLOR="#f0f9ff">
     <div align="center"><b>ä»äh ¼</b></div>
   </td>
 </tr></thead>
 <tbody>
 <tr STYLE="background-color:expression(rowIndex%2==1?'#FFFFFF':'#f7f8f9')">
   <td valign="top" WIDTH="60" align="center"><a datafld="ID" target="_blank"><IMG SRC="images/xq.gif" ALT="查看" border="0"></a></td>
      <td valign="top" WIDTH="60"><span datafld="AUTHOR">作�lt;/span></td>
      <td valign="top" width="580" ><a datafld="ID" target="_blank"><span datafld="TITLE">æ ‡é¢˜</span></a></td>
      <td valign="top" width="60" > <span datafld="PRICE">ä»äh ¼</span></td>
 </tr></tbody>
</table>
3åQ‰å¢žåŠ åˆ†™å‰|Œ‰é’®å’Œåˆ†é¡µæŽ§åˆ¶çš„JAVASCRIPTè¯å¥ã€?br /><form onsubmit="jump(this);return false;" method="post">
         <div align="right">
       æ¯é¡µæ˜„¡¤º
<input name=pageSize datasrc=#dsoInventory datafld=onePageRows size=2>æ¡ï¼Œ
       å…?lt;span datasrc=#dsoInventory datafld=totalPages></span>™å?br />       <span datasrc=#dsoInventory datafld=totalRows ></span>æ?br />       <input type=submit style="width=0" >
       <input name=firstPage type=submit value=首页 onclick="pageNum.value=1">
       <input name=previousPage type=submit value=上页 onclick="pageNum.value=pageNum.value-1">
       ½W?lt;input name=pageNum datasrc=#dsoInventory datafld=intCurrentPage size=2>™å?br />       <input name=nextPage type=submit value=下页 onclick="pageNum.value=(pageNum.value-0)+1">
       <input name=lastPage type=submit value=ž®ùN¡µ onclick="pageNum.value=pageCount.value" >
       <input name=pageCount type=hidden datasrc=#dsoInventory datafld=totalPages onpropertychange="pageCount_onpropertychange(form)">
     </div> </form>
 <script>
  if(document.body == null) document.write(" ");
</script>
<script language="javascript">
 function jump(form)
 {
 articles.src="xmlsrc.jsp?onePageRows="+form.pageSize.value+"&page="+form.pageNum.value+"&time="+(new Date()).getTime();
 /////alert("xmlsrc.jsp?page="+form.pageNum.value+"&onePageRows="+form.pageSize.value+"&time="+(new Date()).getTime());
 ///file://æäº¤åŽè¿”回新的XMLæ•°æ®ã€?br /> }
 function pageCount_onpropertychange(form)
 {
   if(form.pageNum.value==1)
   {
     form.firstPage.disabled=true;
     form.previousPage.disabled=true;
   }
   else
   {
     form.firstPage.disabled=false;
     form.previousPage.disabled=false;
   }
   if(form.pageNum.value==form.pageCount.value)
   {
     form.nextPage.disabled=true;
     form.lastPage.disabled=true;
   }
   else
   {
     form.nextPage.disabled=false;
     form.lastPage.disabled=false;
   }
 }
</script>
//////////////////////////////////////////////////////////////////
<!-- File Name: xml.jsp -->
<script>
  if(document.body == null) document.write(" ");
</script>
<script language="javascript">
 function jump(form)
 {
 dsoInventory.src="xmlsrc.jsp?onePageRows="+form.pageSize.value+"&page="+form.pageNum.value+"&time="+(new Date()).getTime();
 //alert("xmlsrc.jsp?page="+form.pageNum.value+"&onePageRows="+form.pageSize.value+"&time="+(new Date()).getTime());
 //æäº¤åŽè¿”回新的XMLæ•°æ®ã€?br /> }
 function pageCount_onpropertychange(form)
 {
   if(form.pageNum.value==1)
   {
     form.firstPage.disabled=true;
     form.previousPage.disabled=true;
   }
   else
   {
     form.firstPage.disabled=false;
     form.previousPage.disabled=false;
   }
   if(form.pageNum.value==form.pageCount.value)
   {
     form.nextPage.disabled=true;
     form.lastPage.disabled=true;
   }
   else
   {
     form.nextPage.disabled=false;
     form.lastPage.disabled=false;
   }
 }
</script>
<html>
<head>
<title>XMLæ— åˆ·æ–°æäº?lt;/title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
 <link rel="stylesheet" href="css/style.css" type="text/css">
</head>
<body bgcolor="303880" text="#000000" leftmargin="0" topmargin="0">
<XML id="dsoInventory" src="xmlsrc.jsp?page=1" ></XML>
<input type="button" value="aa" onclick="alert(dsoInventory.xml)">
<table id="cmmTbl" datasrc="dsoInventory" datafld="BOOk" width="760" border="0" cellspacing="1" cellpadding="2" align="center" bgcolor="#aaaaaa"Â Â style="border-collapse: collapse" bordercolor="#333333" >
         <thead>
         <tr bgcolor="#FFCC66">
           <td HEIGHT="24" BGCOLOR="#f0f9ff" WIDTH="60" >
             <div align="center"><b>查看</b></div>
   </td>
           <td HEIGHT="24" BGCOLOR="#f0f9ff" WIDTH="60" >
             <div align="center"><b>作�lt;/b></div>
   </td>
   <td width="580" BGCOLOR="#f0f9ff">
     <div align="center"><b>æ ‡é¢˜</b></div>
   </td>
   <td width="60" BGCOLOR="#f0f9ff">
     <div align="center"><b>ä»äh ¼</b></div>
   </td>
 </tr></thead>
 <tbody>
 <tr STYLE="background-color:expression(rowIndex%2==1?'#FFFFFF':'#f7f8f9')">
   <td valign="top" WIDTH="60" align="center"><a datafld="ID" target="_blank"><IMG SRC="images/xq.gif" ALT="查看" border="0"></a></td>
      <td valign="top" WIDTH="60"><span datafld="AUTHOR">作�lt;/span></td>
      <td valign="top" width="580" ><a datafld="ID" target="_blank"><span datafld="TITLE">æ ‡é¢˜</span></a></td>
      <td valign="top" width="60" > <span datafld="PRICE">ä»äh ¼</span></td>
 </tr></tbody>
</table>
<form onsubmit="jump(this);return false;" method="post">
         <div align="right">
       æ¯é¡µæ˜„¡¤º
<input name=pageSize datasrc=#dsoInventory datafld=onePageRows size=2>æ¡ï¼Œ
       å…?lt;span datasrc=#dsoInventory datafld=totalPages></span>™å?br />       <span datasrc=#dsoInventory datafld=totalRows ></span>æ?br />       <input type=submit style="width=0" >
       <input name=firstPage type=submit value=首页 onclick="pageNum.value=1">
       <input name=previousPage type=submit value=上页 onclick="pageNum.value=pageNum.value-1">
       ½W?lt;input name=pageNum datasrc=#dsoInventory datafld=intCurrentPage size=2>™å?br />       <input name=nextPage type=submit value=下页 onclick="pageNum.value=(pageNum.value-0)+1">
       <input name=lastPage type=submit value=ž®ùN¡µ onclick="pageNum.value=pageCount.value" >
       <input name=pageCount type=hidden datasrc=#dsoInventory datafld=totalPages onpropertychange="pageCount_onpropertychange(form)">
     </div> </form>
</body>
</html>
 完æˆä»¥ä¸Šä¸‰æ¥åŽï¼Œå½“用戯‚¿›è¡Œç¿»™å‰|“作时ž®†è‡ªåŠ¨å¯¹è¡¨æ ¼å†…çš„æ•°æ®˜q›è¡Œé‡æ–°çš„XML¾l‘定åQŒè€Œä¸åˆäh–°™åµé¢ã€?br />

]]>