是否可以在CFIF声明中使用response.DATA [i] [j]。
chkUsernameUnique = function(theUsername){
$.ajax({
type: "GET",
url: "/book.cfc",
data: {method: "testFunction", datum: $('#date').val(), returnFormat: "JSON"},
dataType: "json",
success: function(response) {
var str = '<table><tr>';
var i;
var j;
//loop over each column name for headers
for (i = 0; i < response.COLUMNS.length; i++) {
str += '<th>' + response.COLUMNS[i] + '</th>';
}
str += '</tr>';
//loop over each row
for (i = 0; i < response.DATA.length; i++) {
str += '<tr>';
//loop over each column
for (j = 0; j < response.DATA[i].length; j++) {
str += '<td>' + response.DATA[i][j] + '</td>';
}
str += '</tr>';
}
str += '</table>';
$('#debugDiv').html(str);
},
error: function(ErrorMsg) {
console.log('Error');
}
});
}
我想做的是:
<cfif response.DATA[i][j] is 3> str += '<td>test</td>';</cfif>
返回以下错误消息:变量[RESPONSE]不存在。
答案 0 :(得分:1)
response
变量是您的AJAX请求的服务器响应,您正在客户端使用它。因此,您仍处于JavaScript领域:
if (response.DATA[i][j] == 3) { str += '<td>test</td>'; }
ColdFusion(即<cfif>
)在服务器端执行,因此不能用于在运行时评估数据(在浏览器请求URI之后)。