JavaScript實現的一個動態查詢表格,隨著文字框中資料的改變,下邊Table中的資料會自動篩選。
<%@ page language="java" contentType="text/html; charset=UTF-8"<br />pageEncoding="UTF-8"%><br /><!DOCTYPE<br /><html><br /><head><br /><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><br /><meta http-equiv="cache-control" content="no-cache, must-revalidate"><br /><mce:script type="text/javascript"><!--<br />//the function of trim<br />String.prototype.trim = function(){<br /> return this.replace(/(^/s*)|(/s*$)/g,"");<br />}<br />//the function of startsWith<br />String.prototype.startsWith = function(str)<br />{return (this.match("^"+str)==str)}</p><p>function changeModel(obj) {<br />var model = obj.value.toUpperCase();<br />var tbl = document.getElementById("tblResult");<br />var i = tbl.rows.length;<br />var counter = 0;<br />if (model == null || model.trim() == "") {<br />for ( var j = 0; j < i; j++) {<br />tbl.rows[j].style.display = "block";<br />counter++;<br />}<br />document.getElementById("lblMessage").innerText = "Total : "<br />+ counter + " rows ";<br />return;<br />}<br />for ( var j = 1; j < i; j++) {<br />if (tbl.rows[j].cells[0].innerText.startsWith(model)) {<br />tbl.rows[j].style.display = "block";<br />counter++;<br />} else {<br />tbl.rows[j].style.display = "none";<br />}<br />}<br />document.getElementById("lblMessage").innerText = "Total : " + counter<br />+ " rows ";<br />}<br />// --></mce:script><br /></head><br /><body><br /><form action=""><br /><div style="width: 294px; height: 25px; overflow: auto; font-size: 8pt;">Selector : <input<br />type="text" id="txtModel" name="txtModel" maxlength="25" size="25"<br />onkeydown="if (event.keyCode==13) return false;" onkeyup="changeModel(this);"<br />style="font-size: 8pt;text-transform: uppercase;"><br /><label id="lblMessage"></label></div><br /><div style="width: 294px; height: 375px; overflow: auto;"><br /><table id="tblResult" style="font-size: 8pt;" mce_style="font-size: 8pt;" cellpadding="0"<br />cellspacing="0" border="1" width="100%" bordercolor="#FFFFAA"><br /><tr><br /><td>Title</td><br /></tr><br /><mce:script type="text/javascript"><!--<br />for(var i = 0; i < 100; i++){<br />document.write('<tr><td><a href="#" mce_href="#" onclick="giveValueBack(this);">');<br />document.write(i);<br />document.write('</a></td></tr>');<br />}</p><p>// --></mce:script><br /></table><br /></div><br /></form><br /></body><br /></html>