我正在尝试发送特定div的innerhtml到邮件中(在Codeigniter框架中)。
我使用jquery获取了div的inner html,并使用ajax将数据传输到控制器。
邮件已经发送成功,但我的问题是html类、样式标签(除了我在视图文件html中编写的内联样式),样式表都无法工作。
有没有办法将我的style.css文件添加到电子邮件内容中?即使我在部分开头放置的标签正常工作,我也可以接受。
请帮忙看一下,这是我的代码。
传输html到控制器的Ajax代码:
我使用jquery获取了div的inner html,并使用ajax将数据传输到控制器。
邮件已经发送成功,但我的问题是html类、样式标签(除了我在视图文件html中编写的内联样式),样式表都无法工作。
有没有办法将我的style.css文件添加到电子邮件内容中?即使我在部分开头放置的标签正常工作,我也可以接受。
请帮忙看一下,这是我的代码。
传输html到控制器的Ajax代码:
<script type="text/javascript">
$(function() {
$('#sendmail').click(function(e) {
e.preventDefault();
$.ajax({
url:'<?php echo site_url();?>/welcome/send',
type:'POST',
data:{'message':$('#body').html(),'subject':'Subject of your e-mail'},
success:function(data) {
alert('You data has been successfully e-mailed');
alert('Your server-side script said: ' + data);
}
});
});
});
</script>
控制器中的代码 public function send() {
$nome = $this->input->post('message');
$config = array(
'protocol' => 'smtp',
'smtp_host' => 'send.one.com',
'smtp_port' => '2525',
'smtp_user' => 'akhil.ns@cymose-tech.com',
'smtp_pass' => 'akhil123',
'charset' => 'utf-8',
'wordwrap' => TRUE,
'mailtype' => 'html'
);
$this->load->library('email', $config);
$this->email->set_newline("\r\n");
$this->email->from('akhil.ns@cymose-tech.com', 'The Wanderers');
$this->email->to('shabasy002@gmail.com');
$this->email->subject('The Wanderers Proforma Invoice ');
$formatedMessag ='';
$formatedMessag = '<html><head><link rel="stylesheet" type="text/css" href="http://localhost/study/extra/style.css"></head><body><style type="text/css">p{color:#cccccc;font-weight:bold;}</style>';
$formatedMessag .= $nome.'</body></html>';
$this->email->message($formatedMessag);
if ($this->email->send()) {
echo $formatedMessag;
}
}