Ich versuche, einen [fieldset=] BBCode zu erstellen, bei dem du als =-Option einen Titel eingeben kannst und der Inhalt innerhalb des Tags steht.
Bisher erzeugt meine Regel die HTML-Tags korrekt, aber der Inhalt und die Option fehlen.
So sieht die korrekte Tag-Struktur aus:
<field class="bbcode-fieldset">
<legend></legend>
<span></span>
</fieldset>
Und dies ist die Regel, die ich hinzugefügt habe:
md.block.bbcode.ruler.push("fieldset", {
tag: "fieldset",
replace: function(state, tagInfo, content) {
let token = state.push("fieldset_open", "fieldset", 1);
token.attrs = [["class", "bbcode-fieldset"]];
token = state.push("legend_open", "legend", 1);
token.content = tagInfo.attrs['_default'];
token = state.push("legend_close", "legend", -1);
token = state.push("span_open", "span", 1);
token.content = content;
token = state.push("span_close", "span", -1);
token = state.push("fieldset_close", "fieldset", -1);
return true;
}
});
Fehlt mir etwas beim Hinzufügen des Inhalts und des _default-Attributs? Ich möchte, dass es so aussieht:
<field class="bbcode-fieldset">
<legend>{option}</legend>
<span>{text}</span>
</fieldset>