浏览器按钮在AngularJS多步骤表单上前后移动

时间:2014-11-19 01:23:39

标签: jquery angularjs browser-history angular-ui-router

我正在创建一个多步骤表单并使用AngularJS和ui-router将每个问题分解为自己的视图,以便用户可以使用浏览器后退和前进按钮。

我想知道是否有一种方法,如果用户点击表单问题,清除答案,他们就不能再点击浏览器转发按钮,直到他们真正选择答案,此外,用户可以&#39 ;如果所有其他问题尚未填写,请手动输入网址(例如。url.com/#/question7)以访问问题7。

我正在考虑对加载进行检查以查看加载该视图时是否存在变量,如果该变量不存在,则会在页面中移回,但是我不完全确定如何#&# 39; d完成那个。

我的基本ui-router设置如下:

app.config(function($stateProvider, $urlRouterProvider) {

$urlRouterProvider.otherwise("/home");

$stateProvider
  .state('home', {
    url: "/home",
    templateUrl: "home.html"
  })
  .state('q1', {
    url: "/q1",
    templateUrl: "q1.html"
  })
  .state('q2', {
    url: "/q2",
    templateUrl: "q2.html"
  })
  .state('q3', {
    url: "/q3",
    templateUrl: "q3.html"
  })
  .state('q4', {
    url: "/q4",
    templateUrl: "q4.html"
  })
  .state('q5', {
    url: "/q5",
    templateUrl: "q5.html"
  })
  .state('q6', {
    url: "/q6",
    templateUrl: "q6.html"
  })
  .state('q7', {
    url: "/q7",
    templateUrl: "q7.html"
  })
  .state('q8', {
    url: "/q8",
    templateUrl: "q8.html"
  });
});

在此先感谢,感谢任何帮助。

0 个答案:

没有答案