在“Click Event”上隐藏动态生成的div

时间:2015-04-29 15:56:32

标签: javascript jquery css

我正在开发一个动态创建4个div的项目,首先是“display:block”。当我点击下一步时,我将第二个div作为“display:block”,第一个,第三个,第四个作为“display:none”;问题是我快速点击下一个按钮2次 - 2个div获得“display:block”,并且两个都在屏幕上看到。我尝试过以下代码,但我厌倦了这一点。有没有办法控制动态生成的div的显示隐藏?

 <script>

/* First check up that only one div must show on click of my 4 clickable buttons - failed .. ;( */ 

        $(document).ready(function(){
            $('span#backPage').click(function(){
                var alpha1 = $('div.ui-formwizard-content').css('display','block');
                $('div.ui-formwizard-content').css('display','none');
                alpha1.css('display','block');
            });
            $('span#nextPage').click(function(){
                var alpha1 = $('div.ui-formwizard-content').css('display','block');
                $('div.ui-formwizard-content').css('display','none');
                alpha1.css('display','block');
            });
            $('span#prevField').click(function(){
                var alpha1 = $('div.ui-formwizard-content').css('display','block');
                $('div.ui-formwizard-content').css('display','none');
                alpha1.css('display','block');
            });
           $('span#nextField').click(function(){
                var alpha1 = $('div.ui-formwizard-content').css('display','block');
                $('div.ui-formwizard-content').css('display','none');
                alpha1.css('display','block');
            });

/* This is double check that only 1 div must show at one time - but failing too */

           if($('div#step_0').css('display','block')){$('div.step').css('display','none');$(this).css('display','block');}

           if($('div#step_1').css('display','block')){$('div.step').css('display','none');$(this).css('display','block');}

           if($('div#step_2').css('display','block')){$('div.step').css('display','none');$(this).css('display','block');}

           if($('div#step_3').css('display','block')){$('div.step').css('display','none');$(this).css('display','block');}

        });

     </script>

如果有人可以帮助我摆脱这种混乱的多重显示:动态创建的div块,我会很高兴的! ;(我已经为所有人尝试了hide(),并为所选的一个尝试了show()。 我已经尝试了一切,但问题仍然存在。我不知道如果新的一个被阻止,如何让所有其他div隐藏!

1 个答案:

答案 0 :(得分:0)

快速且未经测试。主要是为了显示你不必要的代码。也许它可以帮助您追踪问题。

Mat frame

被修改