Struts2 Ajax 如何传值到Action
Action 代码:
public Integer id;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
Ajax代码:
var xmlHttp ;
function createXMLHttp(){//实例化一个ajaxXMLhttp对象
if(window.XMLHttpRequest){
xmlHttp = new XMLHttpRequest() ;
} else {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP") ;
}
}
function checkMidCallback(){
// alert("2222");
if(xmlHttp.readyState==4){
if(xmlHttp.status==200){
var res = xmlHttp.responseText ;
var dataTab=document.getElementById("dataTab");
var rowsCount=dataTab.rows.length;//得到表格的总行数
var countCell=dataTab.rows.item(0).cells.length; //得到列数
for(var i=0;i<rowsCount-1;i++){//循环删除所有行
dataTab.deleteRow(1);
}
var data= eval("("+res+")");//得到JSON的所有字符串
var listCount=eval("("+res+")").list.length;//得到json中list有多少个对象
var j=0;
for(var i=0;i<listCount;i++){
var row=dataTab.insertRow(i+1);
row.insertCell(0).innerHTML=data.list[j].id;
row.insertCell(1).innerHTML=data.list[j].commodityCode;
row.insertCell(2).innerHTML=data.list[j].commodityName;
row.insertCell(3).innerHTML=data.list[j].quantity;
row.insertCell(4).innerHTML=data.list[j].inPrice;
row.insertCell(5).innerHTML=data.list[j].outMinPrice;
row.insertCell(6).innerHTML=data.list[j].outPrice;
row.insertCell(7).innerHTML=data.list[j].unit;
row.insertCell(8).innerHTML=data.list[j].lastDate;
row.insertCell(9).innerHTML=data.list[j].remarks;
row.insertCell(10).innerHTML="<input type='button' value='删除' onclick='delRowAjax("+data.list[j].id+")'>";
j++;
}
}
}
}
//删除
function delRowAjax(rowId){
if(confirm("确定删除吗?")){
alert("ajax删除+"+rowId);
document.getElementById("id").value=rowId;
createXMLHttp() ;
xmlHttp.open("POST","InventoryAjax_delete") ;
xmlHttp.onreadystatechange = checkMidCallback ;
xmlHttp.send(null) ;
//xmlHttp.send("id=123&keyWord=hahah") ;
}
}
我就知道以下方法,但是这个觉得不好。
xmlHttp.open("POST","InventoryAjax_delete?id=xxx") ;
------解决方案--------------------顶 找书看看
------解决方案--------------------AJAX只有这个传值方法