Диалоговое окно jQuery UI - проблема при использовании Firefox - PullRequest
0 голосов
/ 11 февраля 2011

У меня есть несколько простых jQuery, которые отображают страницу в моем приложении Rails.Вот jQuery:

$('a.popup').click(function() {
    $('<div />').appendTo('body').load($(this).attr('href') + ' form').dialog({
        title: $(this).text(),
        width: 425,
        position: 'top',
    });
    return false;
});

и вот связанный HTML с ERB (встроенный Ruby), генерирующий тег привязки:

<p><%= link_to "Add User", new_user_path, :class => "popup" %></p>

В любом случае, проблема в том, что он работаетChrome, отображающий правильную страницу в диалоге.В Firefox диалоговое окно не имеет содержимого, только заголовок («Добавить пользователя»).

Есть идеи?Спасибо!

1 Ответ

2 голосов
/ 12 февраля 2011

Трудно сказать без живого примера, но, возможно, у вас есть проблема синхронизации с асинхронным вызовом AJAX. Попробуйте построить диалог в обратном вызове:

$('a.popup').click(function() {
    var $a   = $(this);
    var $dlg = $('<div/>');
    $dlg.load($a.attr('href') + ' form', function() {
        $dlg.dialog({
            title:    $a.text(),
            width:    425,
            position: 'top'
        });
    });
    return false;
});

Таким образом, весь контент будет доступен, прежде чем вы передадите вещи в jQuery-UI.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...