Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Angularjs将单击事件的值传递到另一个页面_Angularjs - Fatal编程技术网

使用Angularjs将单击事件的值传递到另一个页面

使用Angularjs将单击事件的值传递到另一个页面,angularjs,Angularjs,我试图使用Angular将数据值从一个页面传递到另一个页面。我是新手,所以如果这听起来很傻,请容忍我。这是我的HTML和Angular代码。基本上,我希望ng模型的“jobtitle”值在表单中填写,一旦用户单击该div,该表单位于不同的页面上 第1页的HTML(数据源) 您在两个不同的页面中两次声明ng应用程序是错误的。传递数据的简单方法是将数据存储在$rootScope中。尝试类似的方法 //Controller foo app.controller('fooController', ['

我试图使用Angular将数据值从一个页面传递到另一个页面。我是新手,所以如果这听起来很傻,请容忍我。这是我的HTML和Angular代码。基本上,我希望ng模型的“jobtitle”值在表单中填写,一旦用户单击该div,该表单位于不同的页面上

第1页的HTML(数据源)


您在两个不同的页面中两次声明ng应用程序是错误的。传递数据的简单方法是将数据存储在$rootScope中。

尝试类似的方法

//Controller foo

app.controller('fooController', ['$scope', 'foobarService', function($scope, foobarService){
$scope.StoreId = function(id){
    foobarService.setId(id);
}]);

//foobarService
app.service('foobarService', [function(){
    var id;

    this.setId = function(id){
        id = id;
    }

    this.getId = function(){
        return id;
    }
}]);

//Controller bar
app.controller('barController', ['$scope', 'foobarService', function($scope, foobarService){
    $scope.id = foobarService.getId();
}]);

您在两个html中都指定ng应用程序,每个应用程序只能添加一次。有很多方法可以实现这一点,共享数据btw页面的一种方法是使用服务。我已从第2页删除。还是没有working@StenMuchow我就是这么做的。我已经创建了一个服务myServiceng应用程序应该将整个应用程序包装在一个很好的位置,它是html标记。第二个页面可能不包括在angular应用程序中。确实更简单,但对$rootScope造成了极大的污染。。。def不是处理数据的理想方式。
<div ng-app="careerApp" ng-controller="JobSelection">
                                    <form class="tsf-step-content">
                                        <label>{{jobtitle}}</label>
                                        <label>{{jobid}}</label>
                                        </form>
</div>
    var careerApp = angular.module("careerApp", []);
careerApp.factory('myService', function () {
    var savedData = {}
    function set(data) {
        savedData = data;
    }
    function get() {
        return savedData;
    }

    return {
        set: set,
        get: get
    }

});

careerApp.controller("JobList", ['$scope', function ($scope) {
    myService.set($scope.jobtitle);
}]);
careerApp.controller("JobSelection", ['$scope',function ($scope) {
    $scope.jobtitle = myService.get();
}]);
//Controller foo

app.controller('fooController', ['$scope', 'foobarService', function($scope, foobarService){
$scope.StoreId = function(id){
    foobarService.setId(id);
}]);

//foobarService
app.service('foobarService', [function(){
    var id;

    this.setId = function(id){
        id = id;
    }

    this.getId = function(){
        return id;
    }
}]);

//Controller bar
app.controller('barController', ['$scope', 'foobarService', function($scope, foobarService){
    $scope.id = foobarService.getId();
}]);