我有一个wordpress插件(php:联系表单7),该插件创建一个表单,并在用户单击“发送”按钮时将数据发送到电子邮件。

我需要能够捕获表单的所有字段并将它们传递给URL,以便可以捕获信息并将其存储在SQL数据库中。

到目前为止,这是我的代码:

$form.submit( function( event ) {
        if ( typeof window.FormData !== 'function' ) {
            return;
        }

        wpcf7.submit( $form );
        event.preventDefault();

        var refillQuiz2 = function ($form, items) {
            $.each(items, function (i, n) {
                $form.find(':input[name="' + i + '"]').val('');
                $form.find(':input[name="' + i + '"]').siblings('span.wpcf7-quiz-label').text(n[0]);
                $form.find('input:hidden[name="_wpcf7_quiz_answer_' + i + '"]').attr('value', n[1]);
            });

        };
        //alert(refillQuiz2[1]);

        window.location.replace("http://www.unicoc.edu.co/mkt/captura.aspx?" + refillQuiz2.value);
    } );


它发送电子邮件,并毫无问题地重定向到URL,但是我得到的URL是“ http://www.unicoc.edu.co/mkt/captura.aspx?undefined

我需要,如果表单有4个字段,则网址看起来像这样的“ http://www.unicoc.edu.co/mkt/captura.aspx?prm1=TEXT&prm2=TEXT&prm3=TEXT&prm4=TEXT

如何捕获$ form项目?

最佳答案

您设置refillQuiz2 =函数...
因此函数本身存储在refillQuiz2中。

如果然后要从refillQuiz2.value获取值,则该值未定义。
我不确定,但是我想在这行上您想设置要检索的值

$form.find('input:hidden[name="_wpcf7_quiz_answer_' + i + '"]').attr('value', n[1]);


将所需的值写入变量,将其返回。
然后,您可以调用refillQuiz2()[因为其中存储了一个函数,该函数将返回您想要的任何内容]

PS:如果您使用console.log(refillQuiz2),则会看到其中仅存储了一个没有值属性的函数。

我希望这有帮助

10-06 07:41