我正在使用angular-ui-router.提交表单时,我想激活ui-routing,它是用ui-sref =“url”定义的.
Angularjs中没有action元素,所以我使用的是ng-submit元素.
我如何/在哪里定义ui-sref网址?
表单通常具有以下代码.但是下面的’url’不是通过ui-router路由的.
- form(name="LNquestionForm",action="/url")
我想做点什么
- form(name="LNquestionForm",ng-submit='ui-sref = "url" ')
因此路由通过myAngularApp.js进行: –
- var myApp = angular.module('myApp',['ui.router']);
- myApp.config(function($stateProvider,$urlRouterProvider) {
- // Now set up the states
- $stateProvider
- .state('/url',{
- url: "/url",templateUrl: "partials/someLink" }
- })
我不太确定我的问题是否正确,但从我的理解中你想提交一个表单并被重定向到你的$statePorivider的给定状态而没有任何服务器调用.如果是这种情况,您可以轻松地执行以下操作:
- <form ng-submit="onFormSubmit" name="myForm">
- <input type="text" required/>
- ....
- </form>
在与表单关联的控制器中,您应该:
- $scope.onFormSubmit = function () {
- if(myForm.$valid) {
- $state.href('/url' [,optional parameters if needed]);
- }
- }
注意onFormSubmit函数是否需要在控制器中注入状态服务或在应用程序控制器中引用它.
另请注意,我在示例中添加了一些表单验证.