使用<p>代替电子邮件表单中的<input /> </p>

时间:2014-02-28 18:20:32

标签: javascript php jquery html

我使用<p>标记来打印由Javascript计算的输出。现在我必须通过电子邮件表单发送我在<p>打印的值。这是我的一段代码。有没有办法获取<p id="total" name="total"></p>的值并使用PHP将其发送到电子邮件?

<h3><p>Total Estimated Cost : </p><b><p id="total" name="total"></p></b></h3>

var times="2.5 hours";
var person="1";
var total="$92.00";
document.getElementById("times").innerHTML=times;
document.getElementById("person").innerHTML=person;
document.getElementById("total").innerHTML=total;

3 个答案:

答案 0 :(得分:0)

您可以使用javascript添加在提交时从P标记接收值的隐藏输入。

答案 1 :(得分:0)

您可以使用javascript使用window.location

将值传递给php
var times="2.5 hours";
var person="1";
var total="$92.00";
document.getElementById("times").innerHTML=times;
document.getElementById("person").innerHTML=person;
document.getElementById("total").innerHTML=total;

function sendMail() {
    window.location = "sendMail.php?total=" + total
}

然后是您网页中的链接

<a href="#" onclick="sendMail();">Send Mail</a>

答案 2 :(得分:0)

<p>奇怪的方式作为价值持有者:)我可能会使用<input>作为快速解决方案甚至数据集以提高灵活性

向上发送动态值(到服务器)的一种方法是通过AJAX,因为你正在使用jquery(标记方式),所以有一个函数$.ajax,可让你发送没有页面刷新的数据。

典型的代码是:

$.ajax({
   url:"your.php",
   type:"POST",
   async:false,
   data:{total:$("#total").html(),times:$("#times").html(),person:$("#person").html()},
   success:function(data) {
      alert("sent ok");
   }
});

在您的假设your.php文件中,您的总价值为$_POST["total"]

然后,您想要使用mail,但我强烈建议您使用PHPMailer之类的内容发送 HTML 邮件,这将解决许多未来的麻烦。