如何从另一个页面的javascript ajax获取数据

时间:2014-02-28 16:08:52

标签: javascript jquery

我正在使用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

1 个答案:

答案 0 :(得分:2)

data响应带有空格,如果您使用trim()函数,则应执行if条件。

if(data.trim() == '1'){
     $('#updatefield').html('UPDATE_RECORD_SUCCESS'); //this should be executed
} else {
  $('#updatefield').html( data );
}

在这里,您可以在chrome调试器中看到data的空格。

enter image description here