Пользовательский интерфейс jQuery — ошибка: не удается вызвать методы в диалоговом окне до инициализации; попытался вызвать метод «открытый»

[Решено] Я пишу этот скрипт. К сожалению, консоль jQuery выдает:

Ошибка: нельзя вызывать методы в диалоге до инициализации; попытался вызвать метод 'open'

Я использую jQuery 1.10.2 и jQuery UI 1.10.4.

 $(function() {
$("#player").on('click', 'img', function() {
    var zadanie = $( "input[name^='act']:checked:enabled" ).val();
    switch(zadanie){
        case '1':
        alert('fajowo jesteś uczciwy');
        break;
        case '2':
         $( "#dialog" ).dialog( "open" );
        break;
    }
    });
});

Диалог в HTML:

<div id="dialog" title="Wybór karty, która zostanie położona oficjalnie">
<p>Fajowy tekst.</p>
</div>

person jaksa    schedule 10.02.2014    source источник


Ответы (3)


Вы должны инициализировать диалоговое окно, прежде чем сможете его открыть:

$(function() {
    $("#dialog").dialog({
        autoOpen: false
    });

    $("#player").on('click', 'img', function() {
    ...

Вот полный пример: https://jqueryui.com/dialog/#animated.

person dominikus    schedule 10.02.2014

Сначала настройте его:

$("#dialog").dialog();

Попробуйте сами: http://jsfiddle.net/x5w8r/

person chuckfinley    schedule 10.02.2014

Вы вызываете метод open до инициализации виджета Dialog. Дополнительные сведения см. здесь: https://api.jqueryui.com/dialog/

person Nate    schedule 10.02.2014