我正在使用jQuery的脚本:
$(document).ready(function () {
var button;
var line;
var inputs;
var params = {};
var updatefield;
$('button.update').click(function () {
button = $(this);
params['button'] = button.val();
line = button.closest('.line');
updatefield = line.find('td.resultFromGet');
inputs = line.find('input');
inputs.each(function (id, item) {
switch($(item).attr('type')){
case 'checkbox':{
params[$(item).attr('name')] = new Array($(item).is(':checked'));
break;
}
default:{
params[$(item).attr('name')] = new Array($(item).attr('value'));
break;
}
}
});
//alert(JSON.stringify(params, null, 4));
$.get( 'core/ajax/correct_exec.php', params )
.done(function (data){
if(data == '1'){
$(updatefield).html('UPDATE_RECORD_SUCCESS');
} else {
$(updatefield).html( data );
}
});
});
});
我获得的页面在成功的情况下从PHP进行echo '1';
。
我尝试使用data == 1
进行测试,但即使它成功也无效。事实上,它发送给我$(updatefield).html( data );
1
。那么为什么不能只打印UPDATE_RECORD_SUCCESS
?
答案 0 :(得分:2)
data
响应带有空格,如果您使用trim()
函数,则应执行if
条件。
if(data.trim() == '1'){
$('#updatefield').html('UPDATE_RECORD_SUCCESS'); //this should be executed
} else {
$('#updatefield').html( data );
}
在这里,您可以在chrome调试器中看到data
的空格。