0

我需要从 ckeditor 按钮访问我的代码隐藏点击事件。我正在为我的自定义 ckeditor 按钮(函数(){

//Section 1 : Code to execute when the toolbar button is pressed
    var a = {
        exec: function (editor) {
            var testObj = editor.parentNode;
            var count = 1;
            while (testObj.getAttribute('id') != "form1") {
                testObj = testObj.parentNode;
            }
            testObj.getElementById('<%= btnUserControls.ClientID %>').click();
        }
    },
//Section 2 : Create the button and add the functionality to it
    b='usercontrols';
    CKEDITOR.plugins.add(b,{
        init:function(editor){
            editor.addCommand(b,a);
            editor.ui.addButton('usercontrols', {
                label:'User Controls',
                icon: this.path + 'ascx.png',
                command:b
            });
        }
    });
})();

但我认为这段代码无法到达我的 Asp.Net 按钮。我错在哪里?谢谢。

4

2 回答 2

1

如果要为 ASP.NET 按钮调用服务器端单击事件,则需要执行如下脚本: __doPostBack('<%= btnUserControls.UniqueID %>', ''); 注意:必须使用 UniqueID 而不是 ClientID。

于 2012-10-15T14:06:22.227 回答
0

在不知道您的.aspx代码的情况下很难准确地说出,但很可能您的表单 ID 在客户端不是“form1”。您可以尝试像这样修改您的代码:

...
var a = {
    exec: function (editor) {
        document.getElementById('<%= btnUserControls.ClientID %>').clic();
    }
}
...

甚至像这样:

...
var a = {
    exec: function (editor) {
        __doPostBack('<%= btnUserControls.UniqueID %>', '');
    }
}
...
于 2012-10-15T13:25:21.340 回答