Angularjs通过ng-click将参数传递给页面
Angularjs passing parameter to a page from ng-click
我的页面顶部有以下三个按钮,下面有输入框。
<div>
<form>
<div>
Enter Show Name<input type="text" ng-model="showName" />
</div>
</form>
</div>
<div>
<button ng-click="href="/api/renameShow"">Rename Show</button>
<button ng-click="href="/api/updateShow"">Update Show</button>
<button ng-click="href="/api/checkShow"">Check Show</button>
</div>
带路由的模块代码是
var showApp = angular.module("showApp", ["ngRoute", "ngResource", "ui"]).
config(function ($routeProvider, $locationProvider) {
$routeProvider.
when('/',
{
controller: '',
templateUrl: 'main.html'
}).
when('/api/renameShow', { controller: 'renameShowCtrl', templateUrl: '/templates/renameShow.html' }).
when('/api/updateShow', { controller: 'updateShowCtrl', templateUrl: '/templates/updateShow.html' }).
when('/api/checkShow', { controller: 'checkShowCtrl', templateUrl: '/templates/checkShow.html' });
基本上我想做的是,当其中一个按钮被点击,ng-click调用相应的页面传递参数"showName"与它。请告诉我如何修理它。由于
首先,你需要告诉你的目标控制器(你所引用的页面),当我们导航到该页时,期望并接受一个参数:
$routeProvider.when('/api/renameShow/:showName?', {
controller: 'renameShowCtrl',
templateUrl: '/templates/renameShow.html'
})
参数后面的问号表示它是一个可选参数。您可以使用锚标记实现相同的目的:
<a href="#/view2/mike">Go to view 2</a>
如果你坚持使用按钮,写一个自定义函数挂钩到按钮的ng-click,然后传递任何你想要的参数,像这样从当前控制器:
<button ng-click="customNavigate('Mike')">Rename Show</button>
在控制器中:
$scope.customNavigate=function(msg){
$location.path("/view2"+msg)
}
,然后在目标控制器中:
app.controller("renameShowCtrl",function($scope,$routeParams){
$scope.showName=$routeParams.showName
});
假设我们需要在sodt .htm:
In HTML - so.html:
<tr ng-controller="SoController" ng-repeat="x in sos">
<td>{{x.date}}</td>
<td><a href="#/sodtl/{{x.soid}}">Dtl</a></td>
</tr>
在AngularJs - app.js - Config:
app.config(function ($routeProvider)
{
$routeProvider.
when ('/sodtl/:psoid?',
{
templateUrl : 'pages/sodtl.html',
controller : 'SoDtlController'
}
)
});
In Controller - app.js:
app.controller('SoDtlController', function ($scope, $http, $location, $routeParams) {
$scope.message = " $routeParams.psoid = " + $routeParams.psoid;
});
因此您可以使用psoid来显示sodtl.html页面中的数据
相关文章:
- 通过javascript将url参数传递到多个不同的href链接中
- 通过函数参数传递id
- AngularJS:如何通过ng-href将多个参数传递给控制器
- 通过将参数传递给我们的构造函数来创建唯一的对象
- 通过网址将参数传递给书签
- 这在JavaScript函数中,是指通过参数传递的变量
- 将参数传递给使用 JavaScript 中的 new 通过内联调用创建的对象
- JavaScript 参数不通过函数传递
- 通过POST将参数传递到iframe中的SSRS时出错
- 通过ajax调用将参数传递到rails后端
- 在Backbone.js中,通过在选项中传递模型来初始化视图和将模型对象作为参数传递有什么区别
- 在JavaScript中,参数可以通过引用传递给函数吗?
- 如何通过参数传递一个jquery函数
- 无法通过CRM 2011中的附加参数传递帐户类型
- 通过参数传递双引号和方括号
- 为什么我的javascript参数没有通过引用传递
- 通过' bind '将函数参数传递给另一个函数
- 通过if语句的函数参数传递对象属性
- 通过参数传递图像,JQuery移动
- 通过Javascript中的参数传递变量