抓取div内容并发送到php电子邮件

时间:2013-02-25 18:56:22

标签: php email html

新来了,很高兴,我从这个论坛得到了很多答案。然而,我现在被困住了。

我有一些javascript正在创建一个窗口颜色和处理选择器(单击颜色样本它更改图像,单击一个句柄,它也做同样的事情)。图像下方是所选窗口的说明。这个文本是由javascript通过拉动图像标题生成的。

现在有趣的部分。在这个选择器下面,我需要添加一个将使用php通过电子邮件发送的表单。在该电子邮件中,我需要提取由javascript生成的窗口描述。

我今天尝试了很多东西,但我已经失去了数量。我试过的最后一段代码是

<script>
$(document).ready(function() {

   $("windowDesc").each(function() {
       var html = jQuery(this).html();
   });

});
</script>

在php邮件文件中我添加了:

$windowtitle = $_GET['html'];

以及尝试

$windowtitle = $_POST['html'];

我也尝试了以下内容:

<script>
    var content = $('#windowDesc').html();
    $.ajax({
            url: 'send_mail.php',
            type: 'POST',
            data: {
                    content: content
            }
    });
</script>

在php邮件文件中我添加了:

$windowtitle = $_GET['content'];

以及尝试

$windowtitle = $_POST['content'];

更不用说其他很多东西了。

基本上我要做的就是抓住包含生成文本的div的内容并通过电子邮件发送给它。如果上述任何一个是正确的,那么我必须将它们置于错误的位置或其他东西。第一个我已经在表单内部,在表单之外,在div之前,在div之后尝试了它。只是还没有尝试过它。这是漫长的一天,提前感谢:o)

对不起,耽搁了两天。好的,所以这里是处理窗口颜色和处理选择器的代码:

var Color = "color";
var Handle = "handledescription";
var ColorDesc = "color";
var HandleDesc = "handle description"
function Window(Color,Handle,ColorDesc,HandleDesc) {
    $('#windowPic').animate({opacity: 0}, 250, function () {
        thePicSrc = "http://www.site.com/images/windows/" + Color + Handle + ".jpg";
        $('#windowPic').attr('src', thePicSrc);
        $('#windowDesc').html("<p>" + ColorDesc + " frame with " + HandleDesc + " hardware</p>");
        $('#windowPic').animate({opacity: 1}, 250)
    })
}
$(document).ready(function() {
    $('#wColors li').click( function() {
        Color = $(this).attr('id');
        ColorDesc = $(this).attr('title');
        Window(Color,Handle,ColorDesc,HandleDesc);
    });
    $('#wHandles li').click( function() {
        Handle = $(this).attr('id');
        HandleDesc = $(this).attr('title');
        Window(Color,Handle,ColorDesc,HandleDesc);
    });
});

2 个答案:

答案 0 :(得分:0)

<script>
    var content = $('#windowDesc').html();
    $.ajax({
            url: 'send_mail.php',
            type: 'POST',
            data: content
    });
</script>

它在这里工作。

答案 1 :(得分:0)

您需要在表单中隐藏输入:

<form id="send_email" action="send_email.php">
  <input id="content" type="hidden" name="content"/>
  ... other inputs here
</form>

然后您可以在提交之前使用Javascript填写它:

$("#send_email").submit(function() {
    $("#content").val($("#windowDesc").html());
}