2009-06-04 18 views
2

我有一個帶有調用tinymce的文本框的標準表單。一切都很好,但是當我發佈到我的行動時,該字段的FormCollection是空白的。我已經將ValidateInput設置爲false以防萬一,但仍然是空白的。我相信這個問題是因爲我使用jQuery Form插件發佈。MVC上的TinyMCE內容空白髮布操作

感謝

回答

11

你必須告訴TinyMCE的編輯職位之前保存的內容回textarea的。

$('#btnSave').click(function(){ 
     tinyMCE.triggerSave(true,true); 
     $('#myform').submit(); 
    }); 
+0

希望我會在一小時前找到這個:)。謝謝。 – Mike 2014-01-10 04:39:27

0

我解決了一個解決辦法

把TinyMCE的內容在一個隱藏字段

var loquesea= tinyMCE.get('mytiny').getContent(); 

$("#fieldHidden").val(loquesea); 

控制器是必要寫<ValidateInput(False)> 因爲控制器接收HTML字符

<ValidateInput(False)>

Function saveItem(ByVal KeysCollections As FormCollection) As ActionResult 

Dim ID As String = KeysCollections("fieldHidden") 

End Function 
1

triggerSave解決方案將起作用。在測試TinyMCE 4.2.5時,我遇到了同樣的問題,並發現從TinyMCE所針對的textarea控件中省略「name」屬性也會導致它失敗(即將null值傳遞給控制器​​)​​。只需向textarea控件添加一個「名稱」屬性就可以修復它,而不應用triggerSave腳本。

所以textarea的從這個去:

<textarea id="mceText"></textarea> 

對此,而不採用triggerSave()函數:

<textarea id="mceText" name="mceText"></textarea> 

也許這將幫助別人的未來。謝謝。

+1

這應該是我認爲的首選解決方案。向textarea添加一個「name」屬性也解決了我的問題(控制器使用null文本值)。根本不需要觸發器或JavaScript。 – BrianLegg 2016-11-17 14:28:41