Javascript 使用AJAX将颜色光谱数据提交到PHP后端

Javascript 使用AJAX将颜色光谱数据提交到PHP后端,javascript,jquery,ajax,angularjs,spectrumjs,Javascript,Jquery,Ajax,Angularjs,Spectrumjs,以下是我试图做的: 挑选颜色 显示值 在div中显示颜色 在submit上,将AJAX发布到PHP 我觉得我离得很近,只是需要额外的推力来判断我到底出了什么问题 这是一个例子 我当前的JavaScript: app.controller('MyCtrl', function ($scope) { $scope.targetColor = '#ec9040'; }); angular.bootstrap(document, ['app']); jQuery(function () {

以下是我试图做的:

  • 挑选颜色
  • 显示值
  • div中显示颜色
  • submit
    上,将AJAX发布到PHP
  • 我觉得我离得很近,只是需要额外的推力来判断我到底出了什么问题

    这是一个例子

    我当前的JavaScript:

    app.controller('MyCtrl', function ($scope) {
        $scope.targetColor = '#ec9040';
    });
    
    angular.bootstrap(document, ['app']);
    
    jQuery(function () {
        var field1 = $('#field1');
    
        $('#send').click(
            function () {
                console.log('fieldvalue: field1.val()')
                jQuery.ajax({
                    type: "POST",
                    url: "colormystatus.php",
                    data: {
                        field1value: field1.val()
                    },
                    dataType: "html",
                    success: function (data) {
                        alert(data);
                    }
                });
            });
        });
    }
    

    您可以将
    jQuery(函数(){})
    移动到控制器中,并发送
    $scope.targetColor
    而不是
    field1.val()
    :()


    我认为,对于您的后期处理,使用app.factory.The返回的数据在controller.So中使用jQuery(函数())将是不必要的。查看下面的代码示例

     app.factory('ColorFactory'),['$http',
            function ($http) {
                var colorFactory={};
                colorFactory.targetPostColor=function(field1){
                    return $http({
                                type: "POST",
                                url: "colormystatus.php",
                                data: {
                                        field1value: field1.val()
                                       }
                        })
                }
                return colorFactory;
            }];
    
            app.controller('MyCtrl',['ColorFactory','$scope',
                function($scope,ColorFactory)
                $scope.targetColor = '#ec9040';
                ColorFactory.targetPostColor($scope.targetColor).success(function(data) { 
                             coonsole.log(data);
                })
               }
            ]);
    
     app.factory('ColorFactory'),['$http',
            function ($http) {
                var colorFactory={};
                colorFactory.targetPostColor=function(field1){
                    return $http({
                                type: "POST",
                                url: "colormystatus.php",
                                data: {
                                        field1value: field1.val()
                                       }
                        })
                }
                return colorFactory;
            }];
    
            app.controller('MyCtrl',['ColorFactory','$scope',
                function($scope,ColorFactory)
                $scope.targetColor = '#ec9040';
                ColorFactory.targetPostColor($scope.targetColor).success(function(data) { 
                             coonsole.log(data);
                })
               }
            ]);