//定义XMLHttpRequest对象实例
var http_request = false;
//定义可复用的http请求发送函数
function send_request(method,url,content,responseType,callback) {//初始化、指定处理函数、发送请求的函数
http_request = false;
//1.开始初始化XMLHttpRequest对象
if(window.XMLHttpRequest) { //Mozilla 浏览器
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {//设置MiME类别
http_request.overrideMimeType("text/xml");
}
}
else if (window.ActiveXObject) { // IE浏览器
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) { // 异常,创建对象实例失败
window.alert("不能创建XMLHttpRequest对象实例.");
return false;
}
//2.
if(responseType.toLowerCase()=="text") {
//http_request.onreadystatechange = processTextResponse;//返回文本函数
http_request.onreadystatechange = callback;//判断是否成功的函数名(callback),根据http_request.readyState ==4 和 http_request.status == 200 来判断
}
else if(responseType.toLowerCase()=="xml") {
//http_request.onreadystatechange = processXMLResponse;//返回xml函数
http_request.onreadystatechange = callback;
}
else {
window.alert("响应类别参数错误。");
return false;
}
//3. 确定发送请求的方式和URL以及是否异步执行下段代码
if(method.toLowerCase()=="get") {//get提交方法
http_request.open(method, url, true);
}
else if(method.toLowerCase()=="post") {//post提交方法
http_request.open(method, url, true);
http_request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
}
else {
window.alert("http请求类别参数错误。");
return false;
}
http_request.send(content);
}
// 处理返回文本格式信息的函数
function processTextResponse() {
if (http_request.readyState == 4) { // 判断对象状态
if (http_request.status == 200) { // 信息已经成功返回,开始处理信息
//alert(http_request.responseText);
alert("Text文档响应。");
} else { //页面不正常
alert("您所请求的页面有异常。");
}
}
}
//处理返回的XML格式文档的函数
function processXMLResponse() {
if (http_request.readyState == 4) { // 判断对象状态
if (http_request.status == 200) { // 信息已经成功返回,开始处理信息
//alert(http_request.responseXML);
alert("XML文档响应。");
} else { //页面不正常
alert("您所请求的页面有异常。");
}
}
}
===========================================================================
1. 在selelct上创建一个新的Option
var class2 = new Array();
class2[0] = new Array("3","14","数码相机");
function class1Change(selectIndex) {
var f = document.forms[0];
f.select2.options.length = 1;
for(var i=0;i<class2.length;i++) {
//class2[0] = new Array("3","14","数码相机");
// [0][0],[0][1],[0][2]
// new Option(text ,value)
if(class2[i][0]==selectIndex) f.select2.add(new Option(class2[i][2],class2[i][1]));
}
}
2. 对表对象新增一行
表格对象的insertRow和insertCell方法有一个默认的参数-1,表示在当前行或者单元格后插入行和单元格。在ie中可以不用填写这个参数,但是在firefox浏览器下必须加上这个参数否则就会出现缺少参数的错误。
var bonusTable=document.getElementById("bonusNumberTable");
var trBonusTable=bonusTable.insertRow(-1);
3. 创建html对象
var addInput=document.createElement("INPUT");//创建一个input
var addInputName=document.createAttribute("name");//创建属性
addInputName.value="bonusInput"+bounsNum;//属性等于什么
var addInputId=document.createAttribute("id");
addInputId.value="bonusInput"+bounsNum;
var addInputType=document.createAttribute("type");
addInputType.value="text";
var addInputClass=document.createAttribute("class");
addInputClass.value="input2";
var addInputSize=document.createAttribute("size");
addInputSize.value="27";
addInput.attributes.setNamedItem(addInputName);//加入input属性
addInput.attributes.setNamedItem(addInputId);
addInput.attributes.setNamedItem(addInputType);
addInput.attributes.setNamedItem(addInputClass);
addInput.attributes.setNamedItem(addInputSize);
tdBonusTableInput.appendChild(addInput);//加入table