2010-12-17 64 views
0

我对JavaScript很新,并已使用JQuery库相当多。我有一个对话框,当我点击页面上的一个按钮时应该打开它。该部分工作正常,但当我添加JavaScript来关闭对话框,点击对话框中的提交按钮时,对话框根本不会打开。 (工作正常,除Internet Explorer之外的所有浏览器)。你们能帮忙吗?这里是我的代码:IE的问题显示的.dialog模式框与jQuery的UI

<script> 
$(function(){ 
$(".callparser").click(function (e) { 
$(".parserinformation").dialog({ 
    modal: true, 
    minHeight:400, 
    minWidth: 580, 
    open: function (e, ui) { 
    var $container = $(this); 
    $container.find('#close').click(function(){ 
     $container.dialog("close"); 
    }); 
    }, 
    beforeClose: function (e, ui) { 
    var $container = $(this); 
    $container.find('#close').unbind('click'); 
    }, 
    }); 

}); 
}); 
    </script> 

下面是HTML(简体):

<input type="button" name="Parser" class="callparser" value="Parser"/> 




<div class="parserinformation" style="display: none;"> 
<div class="addtofolder"> 
    <input type="submit" id="close" class="addtofolderbutton" value="Private" onclick="$.jGrowl('Your product has been added!')"> 
</div> 
</div> 
+0

“当我在关闭对话框的对话框中点击提交按钮关闭对话框时,对话框根本不会打开。”你想打开它还是关闭它? – nolabel 2010-12-17 17:27:53

+0

我有一个提交按钮来关闭对话框。但是,当我将代码关闭时点击按钮,原来的对话框甚至不会打开。 – 2010-12-17 18:00:56

回答

2

尝试没有最后一个逗号(,),IE不会在最后一个元素之后喜欢它。

<script type="text/javascript"> 
    $(function(){ 
     $(".callparser").click(function (e) { 
      $(".parserinformation").dialog({ 
       modal: true, 
       minHeight:400, 
       minWidth: 580, 
       open: function (e, ui) { 
        var $container = $(this); 
        $container.find('#close').click(function(){ 
         $container.dialog("close"); 
        }); 
       }, 
       beforeClose: function (e, ui) { 
        var $container = $(this); 
        $container.find('#close').unbind('click'); 
       } 
      }); 

     }); 
    }); 
</script> 

<input type="button" name="Parser" class="callparser" value="Parser"/> 

<div class="parserinformation" style="display: none;"> 
    <div class="addtofolder"> 
     <input type="submit" id="close" class="addtofolderbutton" value="Private" onclick="$.jGrowl('Your product has been added!')"> 
    </div> 
</div> 
+0

谢谢你回到我身边,但它没有改变任何东西。我删除了逗号,仍然没有打开。 – 2010-12-17 17:59:43

+0

也许你的IE缓存了你的js文件,试着清理缓存(在IE6,IE7和IE8中删除逗号时正常工作)。 – 2010-12-17 18:52:34

+0

就是这样。非常感谢你。 – 2010-12-17 19:11:49