1

我假装将在输入类型文件中选择的附件内容传递到另一个 php 页面,我将通过电子邮件发送附件。

碰巧我有这个表格声明:

<form id="formElem" name="formElem" enctype="multipart/form-data" action="" method="post">

但我无法将目标 php 页面放在那里,因为我通过了一个 jquery 和一个 javascript 函数。它在我为目标 php 页面重定向的最后一个函数中。

所以,在最后一个 javascript 函数中,我需要使用它:

form.action = 'index.php?pagina=candB&'+ qstringA;

将表单的所有数据重定向到假装的 php 页面。在我使用这个之前:

window.location.href = 'index.php?pagina=candB&'+ qstringA;

但正如我在这里被告知的那样,这将不允许正确接收附件的数据。

这是我提交表单的按钮:

<button name='send_cand' id='send_cand' value='send_cand' onclick='return false;' type='submit'>Send Data</button>

它调用以下 jquery 函数:

$('#send_cand').bind('click',function(){

    ....

    if($('#formElem').data('errors')){
        preenchimentoForm=false;

        dadosFormularios(form, preenchimentoForm, cursos, empregos, eventos);
        return false;
    }
    else{
        dadosFormularios(form, preenchimentoForm, cursos, empregos, eventos);
    }
}

因此,我需要做的是将表单元素应用于此函数内部的 var,以便我可以将她传递给函数,直到这里:

form.action = 'index.php?pagina=candB&'+ qstringA;

所以这条线可以工作,因为现在它不工作。

希望我很清楚,我们将不胜感激。谢谢哟!

4

1 回答 1

2

所以你想在提交之前更新表单动作?

尝试使用该.submit()事件,.attr()如下所示:

$('#formElem').submit(function(){

    // Update the form action        
    $('#formElem').attr('action', 'index.php?pagina=candB&'+ qstringA);

});

我在这里测试了这个逻辑:jsFiddle

希望有帮助!

于 2012-10-27T04:49:19.067 回答