javascript - 在 Firebug 或 Chrome 中看不到 POST 操作

标签 javascript ajax angularjs

我看不到 Firebug 或 Chrome 开发工具中正在发出 POST ajax 请求。 我在 Firebug 中看不到成功中 console.log(data) 的输出,但在 Chrome 中,我可以看到 console.log(data) 的输出.

这是我的 Controller ,看看我的评论:

var gameApp = angular.module("gameApp", ['ngRoute','ngSanitize']);
gameApp.service('link', function() {
    this.user = false;
});
gameApp.directive('mapActivity', function() {
    return {
        restrict: 'A',
        link: function(scope, element, attrs) {
            scope.$watch('tabledata', function() {
             angular.element('.click#1').addClass('dotted').html($("<img src='images/dot.png'>"));          
                var j = null;
                for(var i = 1; i <= 4; i++)
                {
                    $.ajax({
                        type: 'GET',
                        url: 'lib/terrain.php',
                        dataType: 'html',
                        data: {i: i},
                        success: function(data) {
                            var randomRuta = Math.floor((Math.random() * 100) + 1);
                            angular.element('.click#'+randomRuta).addClass('monster').html($("<img src='images/blackdot.png' title='"+data+"'>"));                  
                        },
                        error: function(xhr, ajaxOptions, thrownError) { alert(thrownError); }
                    });
                    j=i;
                }  
                angular.element('.click').click(function() {
                    if(angular.element(this).hasClass('monster'))
                    {
                        if(confirm('Vill du anfalla monster?'))
                        {
                            alert("Du vann");
                            angular.element('.click.monster'+j).empty();
                            angular.element('.click.monster').removeClass('monster'+j);
                            angular.element('.click.dotted').empty();
                            angular.element('.click.dotted').removeClass('dotted');
                            angular.element(this).addClass('dotted');
                            angular.element('.click.dotted').html($('<img src="images/dot.png">'));
                        }
                    }
                    else
                    {
                        angular.element('.click.dotted').empty();
                        angular.element('.click.dotted').removeClass('dotted');
                        if(!angular.element(this).hasClass('dotted'))
                        {
                            angular.element(this).addClass('dotted');
                            angular.element(this).html($('<img src="images/dot.png">'));
                        }
                    }
                });
            });                     
        }
    };
});

function makeTableFrom(str) {
    var k = 1;
    result = "";
    for(var i = 1; i <= 8; i++) {
        result += '<tr>';
        for(var j = 1; j <= 20; j++) {
            if(str[k] == '#') {
                result += '<td id=' + k + '">#</td>';
            }
            else if(str[k] == '&') {
                result += '<td class="click" val="water" id="' + k + '">&</td>';
            }
            else {
                result += '<td class="click" id="' + k + '"></td>';
            }
            k++;
        }
        result += '</tr>';
    }
    return result;
}          
gameApp.controller("gameCtrl", function($scope,$http,link,$location,$sce,$rootScope) {

    $scope.getMonsters = "1";
    var tabledata = ""; //Variable to store pattern for html table

    $http.post("lib/action.php", {monsters: $scope.getMonsters}).success(function(data) {   //the post action is not outputed either in firebug or chrome

        tabledata = data;   //Assign the pattern
        console.log(tabledata); //This is not printed out in firebug, but I can see the output i chrome

    }).error(function(data) { console.log("error"); });
    $scope.result = makeTableFrom(tabledata); //Call the function to build the table based on the pattern

    console.log("test"); //This is not shown in firebug, but is printed out in chrome. However, the test is printed out TWICE, instead of just one. Why?

    $scope.safeHtml = function() {
        return $sce.trustAsHtml($scope.result);
    };
    if(link.user) {
        /*$scope.message = "fisk";
        console.log(link.user);*/
    } else {
        /*$scope.message = "Ledsen fisk";
        console.log("Är inte satt");*/
    }
});

这是我的 HTML

<div ng-controller="gameCtrl">
    <table ng-bind-html="safeHtml()" map-Activity>
    </table>
</div>

有人知道为什么 console.log 在 Firebug 中不起作用以及为什么我看不到正在发出 ajax post 请求吗?

最佳答案

我认为这应该对你有帮助:

http://getfirebug.com/enable

关于javascript - 在 Firebug 或 Chrome 中看不到 POST 操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25420109/

相关文章:

javascript - 嵌入谷歌地图

javascript - jquery循环条件语句

ajax - Shopify site liquid 不支持对数组变量进行分页

jquery - 使用ajax和jquery添加到mysql db后如何将div附加到列表

javascript - angular.equals 和 _.isEqual 有什么区别?

angularjs - AngularJS 服务的目的

javascript - 如何访问 Firefox 扩展的 manifest.json 文件?

javascript - 商标替换为下划线?

javascript - 使用 Ajax 在 PHP 中发表评论

javascript - Node server.js - 无法获取/