我需要从ajax回调函数中的ColdFusion函数返回多个值.这是我得到的:
$('input[name="StateName"]').live('change',function() {
var StateID = $(this).parents('tr').attr('id');
var StateName = $(this).val();
$.ajax({
url: 'Remote/State.cfc',type: "POST",data: {
'method': 'UpdateStateName','StateID': StateID,'StateName': StateName
},success: function(result){
if (isNaN(result)) {
$('#msg').text(result).addClass('err');
} else {
$('#' + result + ' input[name="StateName"]').addClass('changed');
};
},error: function(msg){
$('#msg').text('Connection error').addClass('err');
}
});
});
如果我捕获数据库错误,则触发成功回调,结果为非数字(实际上是错误消息的文本).我需要该函数也传回其他值.一个可能是导致错误的行的主键.另一个可能是旧的StateName,因此我可以刷新屏幕上的旧值,以便客户端完全知道他们的更改没有生效.
我想我在这里违反了原子性规则,需要解决这个问题,因为我使用结果作为更新行的主键,或者如果更新失败则是错误消息.我需要返回主键和错误消息.
最佳答案