a标签根据js返回值判断页面是否跳转
2016-04-09 22:03
981 查看
a标签再跳转之前先判断是否符合条件,符合可以跳转,不符合不可以跳转。
自己遇到的问题是:在js方法中根据条件就return结果,但是不行。
原因是:在js方法中return后不会结束整个js方法(action里面会结束整个方法),所以下面的例子始终会返回false
例如(错误的):
a 链接:(根据js中的返回结果:返回false不跳转,返回true则跳转)
正确的(根据条件判断来改变flag的值,最终返回flag)
这是自己学习过程中的记录,方便自己回顾,好记性不如烂笔头
作者:艺至
自己遇到的问题是:在js方法中根据条件就return结果,但是不行。
原因是:在js方法中return后不会结束整个js方法(action里面会结束整个方法),所以下面的例子始终会返回false
例如(错误的):
function updateTrainClass(classId){ var url = '${createLink(controller:'trainClass', action: 'judgeBeforeUpdateClass')}'; $.ajax({ global:false, type: "POST", url: url, data: { id:classId }, async: false,//同步等待结果的返回 success:function(data){ if(data.code==0){ return true }else{ alert("班级已关闭,不可修改") return false } } }) return false }
a 链接:(根据js中的返回结果:返回false不跳转,返回true则跳转)
<a href="${createLink(controller:'trainClass' , action: 'edit',params:[id:params.classList[0]?.id])}" onclick="return updateTrainClass('000');"> <i class="glyphicon glyphicon-pencil"></i> </a>
正确的(根据条件判断来改变flag的值,最终返回flag)
function updateTrainClass(classId){ var flag = false; var url = '${createLink(controller:'trainClass', action: 'judgeBeforeUpdateClass')}'; $.ajax({ global:false, type: "POST", url: url, data: { id:classId }, async: false,//同步等待结果的返回 success:function(data){ if(data.code==0){ flag = true }else{ alert("班级已关闭,不可修改") } } }) return flag }
这是自己学习过程中的记录,方便自己回顾,好记性不如烂笔头
作者:艺至
相关文章推荐
- javaScript中的自定义类型和继承
- [Web API] Client 指定請求及回應格式(xml/json)
- 深入理解JavaScript系列(23):JavaScript与DOM(上)——也适用于新手
- JSP九大内置对象详解(二)
- 【js】:一个含有输入格的js程序
- IEjs 调试、火狐 js 调试
- jsp中radio的性别信息的数据回显
- js获取url中传递的参数
- CommonJs,AMD,CMD是什么?
- 一些常见跨浏览器方法的封装(basic.js)
- JSP九大内置对象详解(一)
- 使用clipboard.js复制页面内容到剪切板
- 图说js中的this——深入理解javascript中this指针
- JavaScript数组删除项的方法
- JavaScript数组增加新的项
- js跨域请求小结
- JavaScript编写人机对战五子棋(终)
- js程序练习
- 3.javascript函数
- JavaScript学习(三)