2012-12-16 83 views
0

我有以下配置,一個表格提交與Ajax和textarea使用ckeditor,因爲我使用ckeditor表單將提交第二個按鈕按下,第一個按鈕按下表格將不會提交。ajax表單將提交後第二次提交按ckeditor

JS

CKEDITOR.replace('_message_tokenizer', {width:"400", height:"200", toolbar : [['Styles','Font','FontSize','Bold', 'Italic', '-', 'Link', 'Unlink', 'smiley', 'Undo', 'Redo']] }); 





    $("#envoyer_message_tokenizer").submit(function(){ 

    if($.trim($("#_message_tokenizer").val())!="" && $.trim($("#contacts").val())!=""){ 

var contacts=[]; 
contacts.push($("#contacts").val()); 

    $.ajax({ 
    type:"POST", 
data:{"action":"envoyer_message_tokenizer", "session_id":<?php echo $session_id['id'];?>, "_message_tokenizer":$("#_message_tokenizer").val(), "_sujet":$("#_sujet").val(), "contacts":contacts} , 
    url: 'messages-ajax.php', 
    success: function(data){ 


    $("#envoyer_message_tokenizer").fadeOut("slow", function(){ 
     $("#message_tokenizer").children().html(data); 

    }); 

     } 
     }); 
    } 
}) 

HTML

<form id="envoyer_message_tokenizer" method="post" action="javascript:;"> 
<table cellpadding="0" cellspacing="0" class="padding dotted"> 
<tr><td valign="top" width="130"><b class="bg">Sujet</b></td> 
<td><input type="text" class="_input _input_text" style="width: 399px;" id="_sujet"/></td></tr> 
<tr><td valign="top"><b class="bg">Destinataire(s)</b> <span class="ast_oblig">*</span></td> 
<td><input type="text" class="_input _input_text" name="contacts" id="contacts"/></td></tr> 
<tr><td valign="top"><b class="bg">Message</b> <span class="ast_oblig">*</span></td> 
<td><textarea style="width: 399px;height: 100px;" id="_message_tokenizer"></textarea></td></tr> 
<tr class="no_dotted"><td></td><td><input type="submit" class="_submit" value="envoyer" /></td></tr> 
</table> 
</form> 

我已經試過CKEditor的GetData方法,但仍然相同的結果。

回答

0

您需要防止在使用或者event.preventDefault()return false形式的瀏覽器的默認submital提交處理

$("#envoyer_message_tokenizer").submit(function(event) { 

    /*use either method*/ 
    /* before code*/ 
    event.preventDefault(); 

     /* your handler code*/ 

    /* OR after code*/ 

    return false; 

}) 
+0

仍然是相同的:表格將提交第二次按下。 – user7832

+0

如果從'if'中刪除'$ .trim($(「#_ message_tokenizer」).val())!=「」&&''會發生什麼?你可以強制CKEditor在'if'之前用API方法更新textarea,前提是問題 – charlietfl

+0

也需要知道是否正在發送AJAX ...需要關於'not submitting'的更多詳細信息以及如何瞭解它沒有提交 – charlietfl

相關問題