我找到了一些“解决方案”,但似乎对我没有任何帮助。我正在使用malsup的jquery表单插件通过POST提交表单数据。表单元素之一是nicEdit框。这是我的代码:
的HTML:
<div class="leftaligned">
<h1>Add News:</h1>
<form enctype="multipart/form-data" id="addnewsform" action="addnewscode.php" method="POST">
<input type="hidden" name="isnewnews" value=1 />
<div class="missinginfo">
Please add a title and some content!
</div>
<h2>Title:</h2>
<input type="text" size="50" id="newtitle" name="newtitle">
<h2>Content:</h2>
<textarea style="width:590px; height:300px;" id="newcontent" name="newcontent"></textarea>
<br>
<div id="contentbuttons">
<input type="submit" value="Add News" class="submitnews" style="float:left;" /></form>
<input type="button" value="Cancel" onclick='parent.$.colorbox.close(); return false;'/>
</div>
这是单击“提交”按钮时当前调用的名称:
<script>
$(document).ready(function() {
var options = {
beforeSubmit: function(arr, $form, options) {
var title = document.getElementById("newtitle").value;
var content = document.getElementById("newcontent").value;
alert(content);
var title = document.getElementById("newtitle").value;
if(title == "" || content == "") {
parent.$.fn.colorbox.resize({height:635});
$(".missinginfo").show();
setTimeout(function() {$(".missinginfo").hide();parent.$.fn.colorbox.resize({height:610});},2000);
return false;
}
},
success: showResponse
};
$('#addnewsform').submit(function() {
$(this).ajaxSubmit(options);
return false;
});
function showResponse(responseText, statusText, xhr, $form) {
parent.onAddNewsSuccess();
}
});
</script>
我的#newcontent文本区域是nicEdit框。
警报(内容)什么也不显示,因此我知道需要做些其他事情才能使nicEdit框内的文本提交。我想念什么?
最佳答案
(在问题编辑中作答。转换为社区Wiki答案。请参见What is the appropriate action when the answer to a question is added to the question itself?)
OP写道:
没关系,我使用以下方法解决了问题:
beforeSerialize: function($form, options) {
nicEditors.findEditor('newcontent').saveContent();
},