Kendo 编辑器动态 Link onClick 功能不工作
Kendo Editor Dynamic Link onClick Function Not Working
我有一个自定义工具栏,它在 kendo 编辑器中插入了一个 link。我试图在 link 中放置一个 onClick 函数,但是当单击动态插入的 link 时,它说函数未定义。我也试过在 link 上放一个 class 并且对 class 有一个点击功能,但它没有被击中。
如有任何帮助,我们将不胜感激。
$("toolbarSubmitBtn").("click", function () {
var value = $("toolbarInput").val();
var $html = '<a onClick="myFunction()"> Click to show alert </a>';
//var $html = '<a class="functioncall"> Click to show alert </a>';
var $empty = $("<div>").append($html)
$("#editor").data("kendoEditor").paste($empty.html());
});
Class 通话
$(document).on("click", ".functioncall", function () {
alert("function called from class");
});
函数调用
function myFunction() {
alert("function called by click");
}
我认为问题在于 Kendo 编辑器将正文内容放在 IFRAME 中,而您的“myFunction”不在该 IFRAME 中。尝试将 onClick 设置为
window.parent.myFunction();
$("#toolbarSubmitBtn").on("click", function () {
var $html = '<a href="#" onClick="window.parent.myFunction();" contenteditable="false"> Click to show alert </a>';
$("#editor").data("kendoEditor").paste($html);
});
可选地,在插入的 link 上设置 contenteditable="false"
以防止用户编辑 link 文本。
这是一个DEMO
我有一个自定义工具栏,它在 kendo 编辑器中插入了一个 link。我试图在 link 中放置一个 onClick 函数,但是当单击动态插入的 link 时,它说函数未定义。我也试过在 link 上放一个 class 并且对 class 有一个点击功能,但它没有被击中。
如有任何帮助,我们将不胜感激。
$("toolbarSubmitBtn").("click", function () {
var value = $("toolbarInput").val();
var $html = '<a onClick="myFunction()"> Click to show alert </a>';
//var $html = '<a class="functioncall"> Click to show alert </a>';
var $empty = $("<div>").append($html)
$("#editor").data("kendoEditor").paste($empty.html());
});
Class 通话
$(document).on("click", ".functioncall", function () {
alert("function called from class");
});
函数调用
function myFunction() {
alert("function called by click");
}
我认为问题在于 Kendo 编辑器将正文内容放在 IFRAME 中,而您的“myFunction”不在该 IFRAME 中。尝试将 onClick 设置为
window.parent.myFunction();
$("#toolbarSubmitBtn").on("click", function () {
var $html = '<a href="#" onClick="window.parent.myFunction();" contenteditable="false"> Click to show alert </a>';
$("#editor").data("kendoEditor").paste($html);
});
可选地,在插入的 link 上设置 contenteditable="false"
以防止用户编辑 link 文本。
这是一个DEMO