2

我为此尝试了以下代码,但它仅将 pagedown 按钮添加到第一个.wmd-input.

在此处输入图像描述

if ($(".wmd-input").length > 0) {
    var converter = new Markdown.Converter();
    var help = function () { alert("Do you need help?"); }
    var options = {
        helpButton: { handler: help },
        strings: {quoteexample: "whatever you're quoting, put it right here"}
    };
    var editors = [];
    var i = 0;

    $(".wmd-input").each(function() {
        editors[i] = new Markdown.Editor(converter, "", options);
        editors[i].run();
        i = i + 1;
    });
}
4

1 回答 1

2

看起来我必须为 wmd 的每个元素添加唯一 ID。我的意思是wmd-inputwmd-previewwmd-button-bar。我以编程方式修改了这个 id 属性。这可以通过手动修改来完成,但我的输入长度是动态的。

  // make wmd's id's unique
  var pBox = $(this).parents(".box");
  $(pBox).find("textarea").attr('id', "wmd-input" + i);
  $(pBox).children("#wmd-preview").attr('id', "wmd-preview" + i);
  $(pBox).find("#wmd-button-bar").attr('id', "wmd-button-bar" + i);

因此,当设置此 ID 属性时,我使用后缀变量调用编辑器并解决了问题。

editors[i] = new Markdown.Editor(converters[i], i, options); 

在此处输入图像描述

 if ($(".wmd-input").length > 0) {
    var converters = [];
    var editors = [];
    var i = 1;
    $(".wmd-input").each(function() {
      converters[i] = new Markdown.Converter();
      var help = function () { alert("Do you need help?"); }
      var options = {
         helpButton: { handler: help },
         strings: {quoteexample: "whatever you're quoting, put it right here"}
      };

      // make wmd's id's unique
      var pBox = $(this).parents(".box");
      $(pBox).find("textarea").attr('id', "wmd-input" + i);
      $(pBox).children("#wmd-preview").attr('id', "wmd-preview" + i);
      $(pBox).find("#wmd-button-bar").attr('id', "wmd-button-bar" + i);

      editors[i] = new Markdown.Editor(converters[i], i, options);
      editors[i].run();
      i = i + 1;
    });
 }
于 2014-12-02T15:49:40.017 回答