Innerhalb Silberstreifen muss ich Tabs in TextareaField verwenden - derzeit würde es weg von dem Feld navigieren, aber ich möchte es stattdessen eine Registerkarte schreiben.Innerhalb von Silverstripe CMS fügen Sie eine Registerkarte in TextareaField, wenn gepresst
UPDATE auf den Kommentar Basierend unten ich diesen Code hinzugefügt haben ...
_config.yml
TextareaField:
extensions:
- TextareaFieldExtension
TextareaFieldExtension.php
class TextareaFieldExtension extends DataExtension {
public function onBeforeRender() {
Requirements::customScript(<<<JS
$(document).delegate('#textbox', 'keydown', function(e) {
var keyCode = e.keyCode || e.which;
if (keyCode == 9) {
e.preventDefault();
var start = $(this).get(0).selectionStart;
var end = $(this).get(0).selectionEnd;
// set textarea value to: text before caret + tab + text after caret
$(this).val($(this).val().substring(0, start) + "\t" + $(this).val().substring(end));
// put caret at right position again
$(this).get(0).selectionStart =
$(this).get(0).selectionEnd = start + 1;
}
});
JS
);
}
}
Ich weiß, dass onBeforeRender genannt wird wie ich einen Würfel ("Hallo Welt") verwendet habe, um zu überprüfen. Es gibt jedoch keine Änderung in der Verwendung von Tab innerhalb eines TextareaFields. Wo gehe ich falsch?
http://stackoverflow.com/questions/6637341/use-tab-to-in-dent-in-textarea –
@GavinBruce also habe ich diesen Code in eine silverstripe Wrapper gelegt, aber es gibt keinen Effekt – Barry