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