JQuery的show方法执行调用以后,会秒退,并且返回上一个状态
2023-09-11 14:19:18 时间
解决JQuery中show方法的问题
在做一个项目时候,发现了一个关于show方法的一个小BUG,我通过一个函数goPage(val)
进行判断校验用户去使用哪一个按钮,在走流程的时候出现了一个问题,就是当我点击控制display
的状态时候,发现执行了show()
方法,但是实现会回显到上一个页面的状态。
html代码片段:
<div class="dj">
<button onclick="goPage(0)">修改企业信息</button>
<button onclick="goPage(1)">新增企业信息</button>
</div>
<div class="dj add" style="display: none;">
...
</div>
<div class="dj add" style="display: none;">
...
</div>
js代码片段:
function goPage(val) {
if(val == 0) {
$('.dj').hide();
$('.edit').show();
console.log('我出来了1111')
} else {
$('.dj').hide();
$('.add').show();
console.log('我出来了2222')
}
}
上述的出现了问题,当控制台打印到console.log('我出来了1111')
或console.log('我出来了2222')
后不会在停留而是返回到上一个页面的状态,做了一些尝试,比如原生js控制css还是不行。
我目前使用解决方案
通过preventDefault()
方法去解决这个问题。这是我的解决方案,该方法作用:如果事件是可取消的,则 preventDefault() 方法会取消该事件,这意味着属于该事件的默认操作将不会发生。这个方法可能是最蠢的方法了,但是没办法,我就只能这样搞出来。
最后的代码js代码片段:
function goPage(val) {
if(val == 0) {
$('.dj').hide();
$('.edit').show();
console.log('我出来了1111')
event.preventDefault();
} else {
$('.dj').hide();
$('.add').show();
console.log('我出来了2222')
event.preventDefault();
}
}
相关文章
- jQuery显示隐藏密码插件jquery.toggle-password演示
- 常见后台jquery ui tabs方法实战
- JQuery 获得元素的方法
- [Web 前端] Jquery实现可直接编辑的表格
- jquery学习以及下载链接
- jquery调用页面的方法
- jquery实现动态五角星评分
- jQuery的validate验证插件使用方法
- jquery判断checkbox是否选中及改变checkbox状态
- jQuery源码-jQuery.fn.attr与jQuery.fn.prop
- 第二百二十四节,jQuery EasyUI,ComboGrid(数据表格下拉框)组件
- jQuery 取选中的radio的值方法
- jQuery 文档操作 - prependTo() ,appendTo()方法
- jQuery 文档操作 - insertAfter() ,insertBefore(),after(),before() 方法
- jQuery 事件 - triggerHandler() 方法
- Jquery Ajax调用aspx页面方法
- JQuery模板插件-jquery.tmpl
- jQuery对象入门级介绍
- jquery 获取元素的绑定事件的处理代码
- jquery获取表单数据方法$.serializeArray()获取不到disabled的值
- jquery 中一些 特殊方法 的特殊使用 一览表
- 黑马day16 jquery&属性过滤选择器
- python web py入门(52)- jQuery - $("").html()实现在页面提示信息
- jQuery 尺寸 方法