IE проблема с отображением модального поля .dialog с Jquery UI - PullRequest
0 голосов
/ 17 декабря 2010

Я очень новичок в javascript и довольно часто использую библиотеку JQuery.У меня есть диалоговое окно, которое должно открываться при нажатии кнопки на странице.Эта часть работает нормально, но когда я добавил JavaScript, чтобы закрыть диалоговое окно при нажатии кнопки «Отправить» внутри диалогового окна, диалоговое окно не открывается вообще.(Работает нормально во всех браузерах, кроме Internet Explorer).Ребята, вы можете помочь?Вот мой код:

<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>

1 Ответ

2 голосов
/ 17 декабря 2010

Попробуйте без последней запятой (,), 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>
...