Ajax 應用模板(動態載入列表框)
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page contentType="text/html; charset=UTF-8"%>
<head>
<META http-equiv=Content-Type content="text/html; charset=UTF-8" >
</head>
<script type="text/javascript">
var XMLHttpReq;
//建立XMLHttpRequest物件
if(window.XMLHttpRequest){ //Mozilla 瀏覽器
xmlhttp = new XMLHttpRequest();
if (xmlhttp.overrideMimeType){ //設定MiME類別
xmlhttp.overrideMimeType('text/xml');
}
}else if (window.ActiveXObject){// IE瀏覽器
try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}catch (e){
try{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}catch (e){ }
}
}
//傳送請求函式
function sendRequest(url, data){ //初始化、指定處理函式、傳送請求的函式
if (!xmlhttp){ //異常,建立物件例項失敗
window.alert("不能建立XMLHttpRequest物件例項.");
return false;
}
// 確定傳送請求的方式和URL以及是否同步執行下段程式碼
xmlhttp.open("POST", url, true);
xmlhttp.onreadystatechange = processRequest1; //根據Web伺服器應答,觸發該狀態改變事件
xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlhttp.send("division=" + data); //傳送資訊到後臺程式
}
//處理返回資訊函式
function processRequest(){
if (xmlhttp.readyState == 4){ // 判斷物件狀態
if (xmlhttp.status == 200) //正常返回資訊,狀態編號200
{ // 資訊已經成功返回,開始處理資訊
updateList();
}else{ //頁面不正常
alert("您所請求的頁面有異常。");
}
}
}
//重新整理列表框函式
function refreshList(){
var sort = document.getElementById("sort").value;
if(sort == ""){
clearList();
return;
}
var url = "**?**="+**;
sendRequest(url);
}
//更新列表框中列表函式
function updateList(){
clearList();
var product = document.getElementById("product");
var results = XMLHttpReq.responseXML.getElementsByTagName("name");
var option = null;
for(var i=0;i<results.length;i++){
option = document.createElement("option");
option = appendChild(document.createTextNode(results[i]).firstChild.nodeValue));
product.appendChild(option);
}
}
//清楚列表框中原有選項的函式
function clearList(){
var product = document.getElementById("product");
while(product.childNodes.length > 0){
product.removeChild(product.childNodes[0]);
}
}
</script>
<table>
<select id="sort" onchange="refreshList();">
<option value="">請選者</option>
<option value="**">**</option>
<option value="**">**</option>
<option value="**">**</option>
</select>
<select id="product" >
</select>
</table>
後臺:
//設定輸出資訊的格式,字元
response.setContentType("text/html; charset=UTF-8");
response.setHeader("Cache-Control","no-cache");
//建立輸出流物件
PrintWriter out = response.getWriter();
out.println("<response>");
--
--
out.println("<name>"+**+"</name>");
--
--
out.println("</response>");
out.close();
//
相關文章
- 動態載入!dom應用!
- Umi + qiankun 實現動態載入子應用路由路由
- React router動態載入元件-介面卡模式的應用React元件模式
- DLL動態庫動態載入
- composer應用(一)自動載入
- vue 動態載入元件Vue元件
- Java動態載入類Java
- ajax動態生成table
- Ajax程式碼執行前應該先載入jQueryjQuery
- 使用Echarts和Ajax動態載入資料進行大資料視覺化Echarts大資料視覺化
- Ajax及其應用
- 動態載入UserControl
- OrchardCore 如何動態載入模組?
- 使用dlopen載入動態庫
- ListView動態載入資料View
- QLibrary 載入動態庫
- vue 動態載入組建Vue
- goloader - golang動態載入Golang
- 熱更新--動態載入frameworkFramework
- 動態庫載入過程
- 動態載入APK原理分享APK
- 動態載入JS和CSSJSCSS
- 動態載入JS的方法JS
- 指令碼的動態載入指令碼
- python動態載入(三)Python
- 對於動態載入內容 (包括 Ajax 請求內容) 繫結點選事件事件
- 讓AutoCAD啟動時自動載入應用程式
- 基於 webpack 的 SPA 單頁 Web 應用 動態載入外掛的機制Web
- Java中的動態配置更新:從配置中心到應用熱載入的實現Java
- C/C++ Qt ListWidget 列表框元件應用C++QT元件
- 動態主席樹模板
- 模板 - 動態規劃動態規劃
- js動態載入實現提高網頁載入速度JS網頁
- EasyUI Jquery 動態載入樹,點選節點載入UIjQuery
- ajax簡單應用
- echarts遷移圖動態載入Echarts
- 如何動態載入js檔案JS
- Android動態載入jar/dexAndroidJAR