2

我找到了一些“解决方案”,但似乎没有什么对我有用。我正在使用 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 框。

alert(content) 什么都不显示,所以我知道我还需要做一些其他事情来获取 nicEdit 框中的文本以提交。我错过了什么?

4

1 回答 1

0

(在问题编辑中回答。转换为社区 wiki 答案。请参阅将问题的答案添加到问题本身时的适当操作是什么?

OP写道:

没关系,我使用以下方法解决了它:

    beforeSerialize: function($form, options) {
    nicEditors.findEditor('newcontent').saveContent();
},
于 2015-02-07T18:45:32.893 回答