2013-08-22 22 views
4

我在我的ASP.NET項目中使用了CKEDITOR,該頁面包含asp:TextBoxTextMode="Multiline"以及一個linkbutton。 當我按下linkbutton我無法獲取回發中的TextBox值.. 沒有發生錯誤... 如何獲得服務器端的內容?我正在考慮使用jQuery來跟蹤CK內容的變化並將其複製到隱藏的textarea ..但似乎並不正確。如何在asp.net回發時獲取CKEDITOR的內容

我正在使用javascript版本的CK v4.2,而不是.net庫版本。

增加:
與CKEditor.zip下載示例文件,你可以看到,在獲得服務器端的文字容易使用$ _ POST。
爲什麼在ASP.NET中不是?

更新:
使用RadScriptManager,RadAjaxManager和RadAjaxPanel(從Telerik的)時出現此問題。

回答

0

這樣的事情可能會幫助

string newText = ((CKedit.CKeditor)(e.Item.FindControl("txtBox"))).Value; 

別人使用的UpdatePanel射擊回發事件調用該函數的設定值

function setValue() 
{ 
    $("#txtinstruction").val(CKEDITOR.instances.txtinstruction.getData()); 
} 

txtinstruction是ID之前保留在回發

+1

正如我所說「我使用的是CK版本的v4.2,而不是.net庫版本。」所以沒有CKeditor類 – Dabbas

-1

其價值textbox或textarea

+0

如果我沒有找到另一種解決方案,我會使用你的,我認爲除了將數據從CK複製到隱藏控件之外,還應該有其他方法...... – Dabbas

+0

在PAGE中使ValidateRequest =「false」指示 – Nirmal

2

在ASPX頁面設置CKEditor的控制爲:

<CKEditor:CKEditorControl ID="CKEditor1" runat="server"/> 

在頁面背後的代碼:

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (Page.IsPostBack) 
    { 
     string text1 = CKEditor1.Text; 
     string text2 = CKEditor1.Value; 
     ... 
    } 
} 

記住添加/包括適當引用的CKEditor二進制

1

我面臨同樣的問題。在一個簡單的頁面上,我測試了一個LinkBut​​ton和一個Button。問題是LinkBut​​ton不直接提交表單。它呈現爲鏈接並調用__doPostBack事件,所以這對於CKEditor來說是一個問題。我試圖設置像Nirmal這樣的textarea,但那不起作用。這是我如何解決它。

頁眉:

<script type="text/javascript"> 
    $(document).ready(function() { $("#tBody").ckeditor(); }); 

    function setValue() { 
     $("#hfBody").val(CKEDITOR.instances.tBody.getData()); 
    } 
</script> 

形式內部:

<asp:TextBox ID="tBody" runat="server" TextMode="MultiLine"/> 
<asp:HiddenField ID="hfBody" runat="server" /> 
<asp:LinkButton ID="btnSend" Text="Link" runat="server" OnClick="X_Click" 
OnClientClick="setValue()"/> 

C#

protected void X_Click(object sender, EventArgs e) 
{ 
    divResult.InnerHtml = hfBody.Value; 
    tBody.Text = hfBody.Value; 
} 
0

我的一個同事通過設置setup屬性時初始化TinyMCE的喜歡這個解決它:

setup: function (ed) { 
    ed.on('change', function (e) { 
     ed.save(); 
    }); 
} 

這會在調用更改事件時將內容保存到編輯器中。

相關問題