在提交之前将Javascript textContent附加到WP Contact Form 7

时间:2017-09-21 08:38:34

标签: javascript wordpress forms email attachment

我们开展了听力测试,我必须将其结果附加到WordPress联系表7中。

您可以在此处查看测试http://in-dem-ohr.de/hoertest/test/

我尝试按ID调用表单,创建新的Textarea并将textContent附加到其中。但它不起作用。

有人可以帮我找到解决方案吗?

将测试结果写入HTML页面中的Textarea的Javascript代码的和平

lblTon.textContent = "Schritt: " + ton + "/15 Auswertung"
hoerAusWertung.textContent = "Auswertung" + "\r\n"
hoerAusWertung.textContent = hoerAusWertung.textContent + "############################" + "\r\n"
hoerAusWertung.textContent = hoerAusWertung.textContent + "Links 0250Hz 
Lautstärke:" + (vol1l * 100).toFixed(1) + "%\r\n"
hoerAusWertung.textContent = hoerAusWertung.textContent + "Links 0500Hz 
Lautstärke:" + (vol2l * 100).toFixed(1) + "%\r\n"
hoerAusWertung.textContent = hoerAusWertung.textContent + "Links 1000Hz 
Lautstärke:" + (vol3l * 100).toFixed(1) + "%\r\n"
hoerAusWertung.textContent = hoerAusWertung.textContent + "Links 2000Hz 
Lautstärke:" + (vol4l * 100).toFixed(1) + "%\r\n"
hoerAusWertung.textContent = hoerAusWertung.textContent + "Links 3000Hz 
Lautstärke:" + (vol5l * 100).toFixed(1) + "%\r\n"
hoerAusWertung.textContent = hoerAusWertung.textContent + "Links 4000Hz 
Lautstärke:" + (vol6l * 100).toFixed(1) + "%\r\n"
hoerAusWertung.textContent = hoerAusWertung.textContent + "Links 6000Hz 
Lautstärke:" + (vol7l * 100).toFixed(1) + "%\r\n"
hoerAusWertung.textContent = hoerAusWertung.textContent + 
"############################" + "\r\n"
hoerAusWertung.textContent = hoerAusWertung.textContent + "Rechts 
0250Hz Lautstärke:" + (vol1r * 100).toFixed(1) + "%\r\n"
hoerAusWertung.textContent = hoerAusWertung.textContent + "Rechts 
0500Hz Lautstärke:" + (vol2r * 100).toFixed(1) + "%\r\n"
hoerAusWertung.textContent = hoerAusWertung.textContent + "Rechts 1000Hz Lautstärke:" + (vol3r * 100).toFixed(1) + "%\r\n"
hoerAusWertung.textContent = hoerAusWertung.textContent + "Rechts 2000Hz Lautstärke:" + (vol4r * 100).toFixed(1) + "%\r\n"
hoerAusWertung.textContent = hoerAusWertung.textContent + "Rechts 3000Hz Lautstärke:" + (vol5r * 100).toFixed(1) + "%\r\n"
hoerAusWertung.textContent = hoerAusWertung.textContent + "Rechts 4000Hz Lautstärke:" + (vol6r * 100).toFixed(1) + "%\r\n"
hoerAusWertung.textContent = hoerAusWertung.textContent + "Rechts 6000Hz Lautstärke:" + (vol7r * 100).toFixed(1) + "%\r\n"

联系表格7解释如何将Javascript添加到表单中: https://contactform7.com/dom-events/

我将其添加到表单字段中:

document.addEventListener('wpcf7submit',function(event){ //代码

},false);

用appendChild函数编写代码:

'wpcf7submit',function(event){var ausw1 = document.getElementById(“hoerAusWertung”)。textContent;使用document.createElement( “文本域”)的appendChild(ausw1)。 },false);

我仍然无法附加测试结果。我无法从textarea移动textContent,可能是因为它是由JavaScript编写的,我应该将其转换为某种文本文件或对象。但我不知道如何,所以如果有人能帮助我?

1 个答案:

答案 0 :(得分:0)

联系表单7会将所有输入字段包含在表单中。 我通常用jquery来做,只需要附加到表单中。

另一件事是,通过电子邮件发送这些新添加的字段。您可以在电子邮件模板中定义这些字段,或添加自定义函数以列出追踪特定输入字段的所有字段。例如,您可以向functions.php添加函数

function add_extra_details($mail_params, $form = null) {

$fields = $_POST;
$add_status = false;

foreach ($fields as $k => $v) {
    if ($add_status == true) {
        $mail_params['body'] .= '<br />'.$k.': '.$v;
    }
    if ($k == 'extra-fields') {
        $add_status = true;
    }
}
$mail_params['body'] .= '<br />IP: '.$_SERVER['REMOTE_ADDR'];

return $mail_params;

} add_filter(&#39; wpcf7_mail_components&#39;,&#39; add_extra_details&#39;,50,2);

如果联系表单包含字段 extra-fields ,则此字段将动态添加后的所有字段