作者nation6238 (挺)
看板Ajax
标题[ajax] (将code写活的)要如何利用 javascript 传值到(POST) jsp
时间Thu Nov 5 01:49:51 2009
<html>
<%@page contentType="text/html" pageEncoding="UTF-8"%>.
<head>
<title>title</title>
<script language="JavaScript">
var xmlDom = new ActiveXObject("MSXML2.DOMDocument");
xmlDom.async = "false";//显示URL资讯
// 载入XML文件的字串
xmlDom.load("
http://127.0.0.1:6238/test.xml");
var objNode = xmlDom.documentElement.childNodes;
// 显示所有XML节点
var num =objNode.length;
document.write(num+"<br>");
var setValue = new Array(num);
var setName = new Array(num);
for ( var i=0; i < num; i++ ) {//抓取XML并抓出 tag value
setValue[i] = objNode.item(i).text;
document.write(setValue[i]+"<br>");
setName[i] = objNode.item(i).nodeName;
document.write(setName+"<br>");
}
// 新增选项
var showTilte = new ActiveXObject("MSXML2.DOMDocument");
function addOption(){//从XML中value加入在"下拉式选单选项item"
for(var j = 0;j<objNode.length;j++){
var strName = setName[j].valueOf();//将XML中Value放入Array
var strValue= setValue[j].valueOf();//将XML中tag放入Array
var objSelect = document.myForm.setTitle;
var objOption = new Option(strValue,strName);
objSelect.add(objOption, -1);//加入在"下拉式选单选项item"
}
}
// 显示选项(item)资讯
function showOption(objForm){
var objSelect = objForm.setTitle;
var name = objSelect.options[objSelect.selectedIndex].text;//
var value = objSelect.options[objSelect.selectedIndex].value;
//document.write(name.toLocaleString());
//========================================================================================
var url, qs;
xmlhttp = createXMLHttp();
if (xmlhttp) {
url = "create.jsp";
qs = "setTitle=" +name.toString() ;
xmlhttp.onreadystatechange = showMsg;
xmlhttp.open("POST", url, true); // 非同步传输 + POST
xmlhttp.setRequestHeader("Content-Type",
"application/x-www-form-urlencoded");
//xmlhttp.send(qs); //查询字串
xmlhttp.send(qs); //查询字串
}
}
function createXMLHttp() {
var xhr;
try {
xhr = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e1) {
try {
xhr = new XMLHttpRequest();
} catch (e2) {
xhr = null;
}
}
}
return xhr;
}
function showMsg() {
var strMsg;
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
strMsg = "<hr>已成功接收,伺服器的回传结果是:<p>" +
xmlhttp.responseText;
document.getElementById("disp").innerHTML = strMsg;
}
}
</script>
</head>
<body>
<form id="myForm" name="myForm" action="index.jsp">
<select id="setTitle" size="6" name="setTitle">
</select><br>
<input type="button" onclick="addOption();" value="新增"><br>
<input type="button" onclick="showOption(this.form)" value="显示
"><br>
</form>
</body>
</html>
这是用javascript+html写出来的
先读入XML档案,利用AJAX XML DOC 分析XML节点
从XML中tag,value存放到array
透过array一一读出加入到item选项
可是要从item挑选出来 值 却无法传送到 (POST) JSP 。
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"
http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<%
String getTitle = request.getParameter("setTitle");
out.println(getTitle);
%>
<h1>OK</h1>
</body>
</html>
这样写出来还是不能run
不知哪里出错
请大家指教
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.137.250.29