$scope.goto= function(title,url,id,name,pmurl) {
$scope.authid=id;
var url = url + '?id='+id+'&name='+name+'&pmurl='+pmurl;
modifyindex = layer.open({
type : 2,
title : title,
content : url,
end : function() {
}
});
这是angularjs的一个controller中的一个函数,里面用到了layer.open,这是一个弹窗,content:url是要弹出的页面,并且向另一个页面传递了参数。其实goto函数是写在ng-click事件中的,这个ng-click在被ng-repeat遍历出来的html元素上。然后在另一个页面,也就是url指向的页面,再在这个页面写一个controller,包含函数
var getData = $scope.getData = function() {
var url = window.location.href;
var da = url.split('?');
var path= da[1].split('='); //id=id&name=name&pmurl=pmurl
$scope.authid=path[1].split('&')[0];
$scope.authname=path[2].split('&')[0];
$scope.authurl=path[3];
}
通过这个就能得到从A页面传递过来的参数,比如将<input >的值传递到goto函数,然后弹窗到B页面,通过getData函数解析得到参数,绑定到B页面的<input>。
这种情况适用于,通过ng-repeat遍历出很多条数据,然后点击某一条进行修改,因为每一条数据都不一样,所以传递的参数也不一样。然后在B页面显示被点击那条数据的内容,当然在B页面也会得到这条数据的id,然后修改name等值,根据id去修改数据,保存到数据库。
原文链接:https://www.f2er.com/angularjs/148853.html