我需要让员工更容易更改在TinyMCE(4)textarea中加载的div的ID标记。由于在版本4中删除了属性编辑器(以前在版本3中可用)...
所以我决定使用以下代码在每个元素上使用click事件来解决方法:
setup : function(ed) {
ed.on('click', function(e) {
var element = $(e.target);
console.log(element.prop("id"));
if(e.target.nodeName == 'DIV'){
var target = e.target;
$("#artnr").val(target.id);
var dialog = $(".dialog").dialog("open");
alert(target);
alert(target.id);
console.log(target);
dialog.find("form").bind("submit", function(ev){
alert("Target" + $(target).prop("id"));
$(target).prop("id", $("#artnr").val().toLowerCase());
alert("Target" + $(target).prop("id"));
$(target).append("<span>" + $("#artnr").val().toLowerCase() + "</span>");
dialog.dialog("close");
ev.preventDefault();
});
}
});
},
您可能会注意到有很多提醒。那是因为这会导致问题。我点击tinymce编辑器的第一个div工作正常,id。但是一旦我改变第二个ID,它也会改变第一个ID。 TinyMCE中的元素可能具有相同的ID。这不重要,因为ID会改变,对吧?
另外,如果有人知道替代品,我经常搜索一下属性编辑器的替代品吗?