Ошибка диалога jQuery UI: b ("<div></div>"). addClass ("ui-widget-overlay") не определено - PullRequest
1 голос
/ 23 марта 2010

У меня есть код ниже для моего диалогового окна, которое содержит раскрывающееся поле

KPMS.ServiceRequests.Status = {

 showOptions : function(requestId, userId, requestType) {
  var url = BASE_URL+'service_requests/status_options/';

        $("#dialog-modal").dialog("destroy");
  $("#dialog-modal").load(url, {"request_id": requestId, "user_id": userId, "request_type":requestType}).dialog(
   {
    modal: true,
    title: "Update Status",
    buttons: {
     Cancel : function() {
      $(this).dialog('close');
     },
     Update: function() {
      alert(1);
     }
    }
   }
  );    
 }
}

Существует тег привязки для заполнения диалога

<a onclick="KPMS.ServiceRequests.Status.showOptions(9, 11, 'SR'); return false;" title="Update status" href="http://localhost/kitco/pms/#9"><img alt="[E]" title="Update" src="http://localhost/kitco/pms/images/edit.png"></a>

Моя проблема: когда я нажимаю на ссылку в первый раз, диалоговое окно заполняется правильно. Затем я закрыл диалог с помощью кнопки отмены, затем снова щелкнул ссылку, чтобы открыть диалог и закрыл его. Для третьего нажатия на ссылку я получаю сообщение об ошибке ниже Javascript, и диалоговое окно не открывается

Error: b("<div></div>").addClass("ui-widget-overlay") is undefined
Source File: http://localhost/kitco/pms/js/jquery-ui-1.8rc3.custom.min.js
Line: 199

Как решить эту проблему?

Ответы [ 2 ]

4 голосов
/ 23 марта 2010

почему вы продолжаете разрушать и перестраивать диалог, почему бы просто не создать диалог один раз и загрузить / изменить содержимое диалогового элемента div? Я думаю, что это должно решить проблему

1 голос
/ 23 марта 2010

Это действительно говорит b? Разве это не должно быть $ или jQuery?

РЕДАКТИРОВАТЬ : не важно, это внутренний вызов jQuery, что объясняет b. b должен быть псевдонимом объекта jQuery (var b = this), что означает, что создание div работает, но addClass не возвращает / возвращает undefined

Вы отправляете свой документ как application/xhtml+xml, случайно? У меня были проблемы с jQuery 1.4 и jQuery UI 1.8 при использовании XTML, а не HTML. Просто догадка.

...