我正在使用 angular-ui-router。提交表单时,我想激活 ui-routing,它是用 ui-sref= "url"
定义的没有action
Angularjs 中的元素,所以我使用 ng-submit
元素。
我如何/在哪里定义 ui-sref
网址?form
通常具有以下代码。但是下面的“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>
在与您的表单关联的 Controller 中,您应该执行以下操作:
$scope.onFormSubmit = function () {
if(myForm.$valid) {
$state.href('/url' [, optional parameters if needed]);
}
}
请注意 onFormSubmit 函数的工作,您需要在 Controller 中注入(inject)状态服务或在应用程序 Controller 中引用它。
另请注意,我在示例中添加了一些表单验证。
关于angularjs - angularjs ui-router中的表单提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18864324/