繁体   English   中英

HtmlEditorExtender控件中的“自定义”按钮?

[英]Custom button in HtmlEditorExtender control?

我非常需要帮助。

我需要向HtmlEditorExtender控件添加自定义按钮,但是我缺乏实际执行此操作的专业知识。

我搜索了整个论坛,但没有任何相关信息。

如果有人乐于助人,我需要一个例子来帮助我解决这个问题。

提前致谢。

一种可能性是使用javascript将其添加到包含按钮的DIV中。 我使用jQuery完成

如果在Firefox中检查DIV,您会注意到它有一个名为“ ajax__html_editor_extender_buttoncontainer”的类。 了解此类可以让您选择容器并向其中添加您自己的自定义按钮。

为此,请在HtmlEditorExtender 下面的HTML 添加以下jQuery脚本:

<script language="javascript" type="text/javascript">
    // retrieve button container div using its class
    $btnContainer = $(".ajax__html_editor_extender_buttoncontainer");

    if ($btnContainer.length == 1) {
        // append your custom button to the collection of elements within the button container div
        $btnContainer.append("<input id=\"HtmlEditorExtender_YourButtonName\" class=\"ajax__html_editor_extender_YourButtonName\" type=\"button\" name=\"YourButtonName\" title=\"YourButtonName\" style=\"width: 101px; height: 21px;\" unselectable=\"on\"></input>");
    }
</script>

要设置按钮的样式,请为其创建图像并将以下内容添加到样式表中:

 /* custom button */
.ajax__html_editor_extender_YourButtonName {
    background: url('/images/YourButtonName_off.png') no-repeat scroll;
    cursor: pointer;
    display: block;
    float: right; /* default is left */
    border: medium none;
}

.ajax__html_editor_extender_YourButtonName:hover {
    background: url('/images/YourButtonName_on.png') no-repeat scroll;
}

按钮的外观当然取决于您,但是结果可能看起来像这样:

带有自定义按钮的HtmlEditorExtender

最后,要添加功能,请将click事件添加到具有您指定的类的元素。 您可以在外部.js文件中执行此操作。

如果要访问文本框的html,请在该单击内检索具有属性contenteditable ='true'的两个div中的第一个div的html。 这是HtmlEditorExtender的设计视图。

将以下内容添加到您的.js文件中:

// click event for the custom button
$("body").on("click", ".ajax__html_editor_extender_YourButtonName", function (e) {
    var $editorDiv = $("div[contenteditable='true']").first();
    alert($editorDiv.html());
})

可能有一种更有效的方法来获取设计视图,但它会起作用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM