**角度新手警报**
我有一个使用多个查询字符串值调用的网页。
我想用来自查询字符串的值填充几个数据绑定区域。
<span class="username">{{firstName}}{{lastName}}</span>
我正在使用此
解析查询字符串 var vars = [], hash;
var q = document.URL.split('?')[1];
if (q != undefined) {
q = q.split('&');
for (var i = 0; i < q.length; i++) {
hash = q[i].split('=');
vars.push(hash[1]);
vars[hash[0]] = hash[1];
}
}
alert(vars['lastName']);
我不确定如何将值实际驱动到数据绑定字段中。
答案 0 :(得分:1)
使用角色中的$ location provider。
您可以执行var searchObject = $location.search();
然后获取此对象的密钥。与searchObject.lastName
一样angular.controller( “CTRL”,[ '$位置',函数($位置){ / ** Ctrl代码** /
}]);
答案 1 :(得分:0)
我不得不从几个部分中拿出几个部分和一把锤子来取得一些东西。
话虽如此,代码的放置尤为重要。
大多数代码必须在页面的开头和头部。
完成$ location的建议很好,但每次我将它放入代码块时似乎都失败了。
这是主要代码块......
<script>
var dashboardApp = angular.module('dashboardApp', []);
dashboardApp.controller('userNameCtrl', function ($scope) {
var vars = [], hash;
var q = document.URL.split('?')[1];
if (q != undefined) {
q = q.split('&');
for (var i = 0; i < q.length; i++) {
hash = q[i].split('=');
vars.push(hash[1]);
vars[hash[0]] = hash[1];
}
}
$scope.firstName = vars['firstName'];
$scope.lastName = vars['lastName'];
});
<body ng-app="dashboardApp">
<span class="username" ng-controller="userNameCtrl">{{firstName}} {{lastName}}</span>
此代码块失败,没有任何错误消息,但它崩溃了,并吹出剩余的javascript块
var dashboardApp = angular.module('dashboardApp', []);
dashboardApp.controller('userNameCtrl', function ($scope, $location) {
alert("First Name is - " + $location.search()['firstName']);
var vars = [], hash;
var q = document.URL.split('?')[1];
if (q != undefined) {
q = q.split('&');
for (var i = 0; i < q.length; i++) {
hash = q[i].split('=');
vars.push(hash[1]);
vars[hash[0]] = hash[1];
}
}
$scope.firstName = vars['firstName'];
$scope.lastName = vars['lastName'];
});