Разработка Jeditable плагинов - PullRequest
0 голосов
/ 29 октября 2011

Использование Jquery-плагина Jeditable для создания формы. Я пытался объединить плагин charcount и автострау с пользовательской демонстрационной страницы здесь: http://www.appelsiini.net/projects/jeditable/custom.html. Я не достаточно умен с плагинами jquery, чтобы понять это. Я не уверен, могу ли я просто иметь несколько плагинов или мне действительно нужно найти способ объединить код? Есть указатели?

1 Ответ

2 голосов
/ 10 ноября 2011

Если вы посмотрите на исходный код для jedtable-charcounter (http://www.appelsiini.net/projects/jeditable/jquery.jeditable.charcounter.js) и jeditable-autogrow (http://www.appelsiini.net/projects/jeditable/jquery.jeditable.autogrow.js),), вы увидите, что они в основном одинаковы.это:

    $.editable.addInputType('hybrid', {
        element : function(settings, original) {
            var textarea = $('<textarea />');
            if (settings.rows) {
                textarea.attr('rows', settings.rows);
            } else {
                textarea.height(settings.height);
            }
            if (settings.cols) {
                textarea.attr('cols', settings.cols);
            } else {
                textarea.width(settings.width);
            }
            $(this).append(textarea);
            return(textarea);
        },
        plugin : function(settings, original) {
            $('textarea', this).charCounter(settings.charcounter.characters, settings.charcounter);
            $('textarea', this).autogrow(settings.autogrow);
        }
    });

Убедитесь, что вы ссылаетесь на оба плагина.

Затем вы можете вызвать jQuery следующим образом:

$(document).ready(function() {
  $(".hybrid").editable("http://www.appelsiini.net/projects/jeditable/php/save.php", { 
      type      : "hybrid",
      submit    : 'OK',
      tooltip   : "Click to edit...",
      onblur    : "ignore",
      charcounter : {
         characters : 60
      },
      autogrow : {
           lineHeight : 16,
           minHeight  : 32
        }
  });
...