对于客户端,我创建了一个quote-widget,其中一个可编辑字段就是名称。声明如下:
editor.widgets.add('quote', {
editables: {
name: {
selector: '.quote__name',
allowedContent: ' '
},
它看起来像这样的模板:
'<strong class="quote__name">Ola Nordmann</strong>' +
我不确定allowedContent中是否有一个空格是一个hack,但它似乎不允许所有我想要的内容。传递一个空字符串似乎会导致它被忽略。我只希望客户能够更改强标签内的名称而不能弄乱任何格式,但目前他们可以按&#34;输入&#34;在强标签内并添加换行符。我已经尝试了所有的东西,但似乎没有任何办法让我禁止换行。最糟糕的是,如果他们在强标签内添加换行符并保存节点(这是Drupal),如果他们以后回来并编辑节点,则换行符已移出强标签,因为这是一个小部件,他们可以只编辑可编辑内容中的内容,这样他们就无法在不进入html源模式的情况下删除换行符并手动删除它或删除小部件并重新插入。
那么有没有办法完全禁止小部件内的换行符可编辑?
答案 0 :(得分:1)
此代码可在重点关注可编辑时阻止换行。
editable.on('focus', function(){
editor.on('key', disableEnterKey);
})
editable.on('blur', function(){
editor.removeListener('key', disableEnterKey);
});
function disableEnterKey(e){
if(e.data.keyCode === 13) {
e.cancel();
}
}