數據和文件,我知道有一個topic說到這個 我跟着它,但我仍然有問題,我的代碼 這裏是我的代碼發送使用Ajax和jQuery
var id_dossier = $('#jform_id').val();
var date_facture = $('#jform_date_facture').val();
var date_paiement_facture = $('#jform_date_paiement_facture').val();
var mode_paiement_facture = $("select#jform_mode_paiement_facture option").filter(":selected").val();
var idBanque = $("select#jform_id_banque option").filter(":selected").val();
var idCompte = $("select#jform_id_compte option").filter(":selected").val();
var cheque_facture = $('#jform_cheque_facture').val();
var montant_cheque = $('#jform_montant_cheque').val();
var numero_facture = $('#jform_numero_facture').val();
var numero_retenu_source = $('#jform_numero_retenu_source').val();
var echeance = $('#jform_valeur_echeance').val();
var document_facture = document.getElementById('facture_document');
的document_facture是文件輸入
然後我把數據在其他變種我在其他疑問句叫donnee
var donnee ={
'id_dossier' : id_dossier,
'date_facture' : date_facture,
'date_paiement_facture' : date_paiement_facture,
'mode_paiement_facture' : mode_paiement_facture,
'id_banque' : idBanque,
'id_compte' : idCompte,
'cheque_facture' : cheque_facture,
'montant_cheque' : montant_cheque,
'numero_facture' : numero_facture,
'numero_retenu_source' : numero_retenu_source,
'echeance' : echeance,
'document_retenu_source' : document_retenu_source
};
好重刑有這行代碼,我不知道是什麼,我怎麼能取代它在我的代碼
var formData = new FormData($(this)[0]);
,所以我用這個
var formData = new FormData();
formData.append('documents', document_facture.files[0]);
取代它和我的數據添加它Ajax請求
$.ajax({
type: 'post',
cache: false ,
url: 'index.php?option=com_tktransit&task=dossier.genererFacture',
data: {donnee:donnee,formData:formData },
success: function(resp)
{
if(resp == "1")
{
ajax_result_message("<?php echo JText::_('COM_TKTRANSIT_DOSSIER_FACTURE_GENERER'); ?>",0,'facture');
afficher_button(2);
$('#td_facturation').html("<?php echo JText::_('COM_TKTRANSIT_FACTURE_DEJA_FACTURER'); ?>");
$('#td_check_facturation').hide();
generate_pdf(id_dossier);
}
else if(resp == "2")
{
ajax_result_message("<?php echo JText::_('COM_TKTRANSIT_DOSSIER_FACTURE_NUMERO_FACTURE_EXISTE_DEJA'); ?>",1,'facture');
}
else
ajax_result_message("<?php echo JText::_('COM_TKTRANSIT_DOSSIER_FACTURE_ERREUR_GENERER_FACTURE'); ?>",1,'facture');
$("#ajax-facture-image_loader").hide();
},
error: function(XMLHttpRequest, textStatus, errorThrown)
{
ajax_result_message("<?php echo JText::_('COM_TKTRANSIT_DOSSIER_FACTURE_ERREUR_GENERER_FACTURE'); ?>",1,'facture');
$("#ajax-facture-image_loader").hide();
}
});
以及當我點擊按鈕來調用AJAX功能,我得到這個錯誤 類型錯誤:「追加」調用的對象不實現接口有關MDATA。 任何幫助,請
您應該查看'ajaxForm'插件:http://malsup.com/jquery/form/ – leftclickben 2014-11-24 09:01:54