struts标签iterator的用法

阅读更多

今天测试发现了一个struts标签的问题:我使用iterator遍历一个集合,下面为遍历的数据

',)">返销

点击链接时,响应事件弹出一个easyDialog,回调函数发送ajax请求,并需要获取该条记录的id作为参数,代码如下:

var btnFn = function( e ){
alert($("#resellLogId").val());
$.ajax({
url : "resell!repay",
dataType : "json",
type :"post",
data :{
repayId : $("#resellLogId").val()
},
success : function(obj){
if(obj.ok){
alert('返销成功');
location = "toUserInfo!queryPay";
}
else{
alert("返销失败");
return false;
}
}
});
return true;
};
// 返销
function resell(typename,remark,amount,id){
$("#resellLogId").val(id);
alert($("#resellLogId").val());
easyDialog.open({
container : {
header : '返销确认',
content : '

充值类型:'+typename+'

充值账号:

' +
'充值金额:
'+
'
',
yesFn : btnFn,
yesText : '确认返销' ,
noFn : true
},
fixed : false
});
};

一开始的问题是:无论是选择哪条记录,它获取的都是第一条记录的id。记录的id通过$("#resellLogId")获取。

猜想的原因是struts迭代valuestack存放的值的问题。直接在遍历中传值传的都是第一条的值。

解决办法:在点击事件时,给resellLogId动态赋值,这样相当于把需要的记录绑定,回调函数再通过id获取其值。结果就解决了。

你可能感兴趣的:(struts,iterator,回调函数)