2013-11-13 2 views
1

Я хочу переопределить внутренний виджет диалогового виджета jQueryUI. В этом примере добавляется только «console.log (« кнопка »); к исходной функции
Это мой код:Переопределение внутреннего виджета диалогового окна jQueryUI

$.extend($.ui.dialog.prototype, 
    { 
     _createButtons: function() { 
      console.log('button'); 
      var e = this, i = this.options.buttons; 
      return this.uiDialogButtonPane.remove(), this.uiButtonSet.empty(), t.isEmptyObject(i) || t.isArray(i) && !i.length ? (this.uiDialog.removeClass("ui-dialog-buttons"), undefined) : (t.each(i, function(i, s) { 
       var n, a; 
       s = t.isFunction(s) ? {click: s,text: i} : s, s = t.extend({type: "button"}, s), n = s.click, s.click = function() { 
        n.apply(e.element[0], arguments) 
       }, a = {icons: s.icons,text: s.showText}, delete s.icons, delete s.showText, t("<button></button>", s).button(a).appendTo(e.uiButtonSet) 
      }), this.uiDialog.addClass("ui-dialog-buttons"), this.uiDialogButtonPane.appendTo(this.uiDialog), undefined) 
     } 
    } 
); 

Я получаю эту ошибку: «Uncaught ReferenceError: т не определен»
Что здесь не так? Или что это правильный способ выполнить эту задачу?

+0

Я не уверен, что вопрос в том, так как сообщение об ошибке так ясно. Ни в коем случае в этом коде 't' не объявлено или не заполнено. И я не вижу, как он будет работать с оператором return с несколькими значениями, разделенными запятой. – Archer

+0

«t» определяется в «диалоге» itselt. О заявлении о возврате: http://stackoverflow.com/questions/10284536/return-statement-with-multiple-comma-seperated-values ​​ – lvil

+0

Спасибо за объяснение. Я знаю теперь, чтобы никогда не использовать этот тип выражения return: p Удачи вам в вашей проблеме. – Archer

ответ

0

Итак, это было просто: внутри jquery_ui.js т используется для JQuery

var t = $; 
Смежные вопросы