我试图编写一个脚本,当我单击一个按钮时,该脚本会自动显示summernote链接对话框。
例如,我有以下按钮:
<button class="btn btn-sm btn-info use_hyperlink" data-href="//files.examples.org.uk/song.mp3" type="button">Copy</button>
所以在我的js中,我有:
$("#linklist").on("click", "button.use_hyperlink", function () {
var href = $(this).data("href")
modal = $("div.note-editor.note-frame.panel.panel-default div.modal.link-dialog")
modal.addClass("in").modal("show")
modal.find("input.note-link-url.form-control.note-form-control.note-input").val(href)
modal.find("button.note-btn.note-btn-primary.note-link-btn").prop("disabled", false).removeClass("disabled").attr("type","button")
})
这将打开对话框,成功粘贴href
,但是单击Insert Link
按钮将提交Summernote所在的表单。
看6765
行中的summernote code,有一个叫做showLinkDialog
的函数,我想这是我想要的函数。但是,当我尝试:
$(document).ready(function () {
$("textarea#summernote").summernote({height: 500});
$("#linklist").on("click", "button.use_hyperlink", function () {
var href = $(this).data("href")
$("textarea#summernote").showLinkDialog({
url: href
});
})
})
我得到一个Uncaught TypeError: $(...).showLinkDialog is not a function
。
答案 0 :(得分:1)
尝试点击按钮触发
$('.note-insert [aria-label^="Link"').trigger('click')