我有一个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),则会看到其中仅存储了一个没有值属性的函数。
我希望这有帮助