首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

ajax 多值 jsp 急

2013-01-11 
ajax 多值 jsp 在线等 急!function showHint(ip,mask,gw,dns){$.ajax({type:GET,url:/terminal/termina

ajax 多值 jsp 在线等 急!
function showHint(ip,mask,gw,dns)
{
$.ajax({
type:"GET",
url:"/terminal/terminalUpdate.do", 
data:"ip"+ip+"mask"+mask+"gateway"+gw+"DNS"+dns,
success:function(data){
    document.getElementById("item").innerHTML=data;
},
async:true,   
error:function(){
alert("请求失败");
}
});
}
上面为ajax函数,下面为页面部分
<tbody>
<s:iterator value="list" id="item" status="st">
<tr>
<td><s:property value="EEE"></s:property></td>
<td><s:property value="#st.index+1" ></s:property></td>
<td><s:property value="STATUS"></s:property></td>
<td><s:property value="SN"></s:property></td>
<td><input value="<s:property value="IP"></s:property>"></td>
<td><s:property value="DEST"></s:property></td>
<td><input value="<s:property value="MASK"></s:property>"></td>
<td><input value="<s:property value="GW"></s:property>"></td>
<td><input value="<s:property value="DNS"></s:property>"></td>
<td><button  onclick="showHint()"><span>修改</span></button></td>
</tr>
</s:iterator>
</tbody>
我的目的,可以修改input的属性值,用ajax提交,但是我页面会遍历出很多条来,怎么可以提交我修改的那条,貌似我ajax函数,还有传参的地方有问题,望高手指教我这菜鸟,越详细越好!谢谢~ ajax jsp iterator function
[解决办法]

引用:
看着稍微有一点乱,你不能把你想实现的功能稍微介绍一下。

看着稍微有一点乱,你能不能把你想实现的功能稍微介绍一下。
少打了一个字,意思就变了,晕。!~
[解决办法]
data:"ip"+ip+"mask"+mask+"gateway"+gw+"DNS"+dns,这里的参数格式不对
改成
data:"ip="+ip+"&mask="+mask+"&gateway="+gw+"&DNS="+dns,

[解决办法]

data:"ip"+ip+"mask"+mask+"gateway"+gw+"DNS"+dns,

多参好像是这样吧:
data : {"ip":ip,"mask":mask,"gateway":gw,"DNS":dns},

[解决办法]
修改把参数传进去:
<td><button  onclick="showHint('<s:property value="ip"></s:property>','<s:property value="mask"></s:property>','<s:property value="gateway"></s:property>','<s:property value="DNS"></s:property>')"><span>修改</span></button></td>
[解决办法]
楼上参数格式data : {"ip":ip,"mask":mask,"gateway":gw,"DNS":dns}一直在用。
更新只能全体更新吧。多条的话,参数会以数组形式传到后台。
[解决办法]
引用:
data:"ip"+ip+"mask"+mask+"gateway"+gw+"DNS"+dns,

多参好像是这样吧:
data : {"ip":ip,"mask":mask,"gateway":gw,"DNS":dns},

两种写法都可以但是第二种写法jquery内部还有将他转换为第一种格式的
[解决办法]
引用:
引用:修改把参数传进去:
<td><button  onclick="showHint('<s:property value="ip"></s:property>','<s:property value="mask"></s:property>','<s:property value="gateway"></s:property>','<……


你修改的数据是在一个list中,而传回来的也是一个list,刷新的是整个list
[解决办法]
同时更新多条的话  用JSON应该可以做,把要修改的数据封装成JSON

把 id,ip,mask,gateway,dns封装成JSON格式
[解决办法]
引用:
引用:引用:引用:修改把参数传进去:
<td><button  onclick="showHint('<s:property value="ip"></s:property>','<s:property value="mask"></s:property>','<s:pr……


好像不能只刷新list中的一部分数据吧?

其实刷新只是将所有数据再读一遍而已,并没有改动未修改的数据

遍历list 的话 你应该用JSON数据吧 
[解决办法]
楼主的需求无非就是更新table里的内容。
楼主可以在success方法里把data的数据弄成tr td就行了

success:function(data){
   var content="";
   for(var i=0;i<data.length;i++){//迭代这个json数组拼凑成html脚本各个值对应到各个td
      content+="<tr>"+
               "<td>"+data[i].IP+"</td>"+
               "<td>"+data[i].SN+"</td>"+
               "<td>"+data[i].MASK+"</td>"+
               "<td>"+data[i].DEST+"</td>"+
               "<td>"+data[i].DNS+"</td>"+
               "<td>"+data[i].GW+"</td>"+
               "</tr>";
   }
   $("#tableId").html(content);//将这个表格的内容改成content的html脚本
}

热点排行