javascript - 提示信息点击确认跳转页面
高洛峰
高洛峰 2017-04-10 18:03:25
[JavaScript讨论组]
<span ng-click="vm.sub()">-</span>{{vm.test_value}}<span ng-click="vm.add()">+</span>
<button ng-click="vm.summit()">提交</button>

<!--下面是提示框 -->
<p class="weui_msg" ng-show="vm.is_alert">
        <p class="weui_icon_area"><i ng-class="{'weui_icon_success':vm.alert.success,'weui_icon_cancel':vm.alert.error}" class="weui_icon_msg"></i></p>
        <p class="weui_text_area">
            <h2 class="weui_msg_title">{{vm.alert.title}}</h2>
            <p class="weui_msg_desc">{{vm.alert.detail}}</p>
        </p>
        <p class="weui_opr_area">
            <p class="weui_btn_area">
                <a href="javascript:;" ng-click="vm.closeDimmer()" class="weui_btn weui_btn_primary">确定</a>
                <a href="javascript:;" ng-click="vm.closeDimmer()" class="weui_btn weui_btn_default">取消</a>
            </p>
        </p>
    </p>
下面是对数值的初始化和一些方法
vm.test_value = 1;
vm.submit = function(){
    var params = {
        test : 1
    }
    $http.post(some_url,params).then(function(res){
      if(res.status == 1){
          vm.is_alert = true;
          vm.alert = {
              title : '成功了',
              error : true
          }
            //但是这里的closeDimmer之后要跳转,怎么做到?
            //看一些框架都是有.then方法,所以我想是不是要讲那个closeDimmer设置为异步?
          $state.go('some state');//这里跳转到某个state
      }
    })
}


vm.sub = function(){
    if(vm.test_value == 1){
        //这里是要提示框的
        vm.is_alert = true;
        vm.alert = {
            title : '最少为1',
            error : true
        }
        //这里设置的弹出提示框
        return;
    }
    vm.test_value --
}

vm.add = function(){
    if(vm.test_value == limit){
        //这里是要提示框的
        vm.is_alert = true;
        vm.alert = {
            title : '最多只能limit',
            error : true
        }
        //这里设置的弹出提示框
        return;
    }
    vm.test_value ++

}

vm.closeDimmer = function(){
    vm.is_alert = false;//这里将提示框隐藏掉
}
高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(2)
PHP中文网

基于你当前的代码,我觉得要做到你的效果,最小的改动如下:
在controller下设置一个变量url

var url = ''

在你原有的代码里

vm.submit = function(){
    var params = {
        test : 1
    }
    $http.post(some_url,params).then(function(res){
      if(res.status == 1){
          vm.is_alert = true;
          vm.alert = {
              title : '成功了',
              error : true
          }
          //将url设置成要跳转的地址
          url = 'www.website.com/foo/bar'
          
          $state.go('some state');//这里跳转到某个state
      }
    })
}
vm.closeDimmer = function(){
    if (url) {
        //这里进行跳转
        window.location = url
    }
    vm.is_alert = false;//这里将提示框隐藏掉
}
PHP中文网
state.go('some state');

这句要放到vm.closeDimmer方法中。在关闭方法中你得写点逻辑判断,在上面情况下要跳页,比如取消的话可能就不需要跳页。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号