Я ищу способ отправки по электронной почте содержимого динамически добавленного div. Идея состоит в том, что информационный бюллетень состоит из списка названий и текстов, отображаемых один за другим, когда пользователь нажимает на заголовок.Как написать динамическое содержимое
Когда текст отображается, пользователь может нажать кнопку «Отправить письмо», а затем его или ее почтовый клиент откроется с новым электронным письмом, в котором текст (содержимое рассматриваемого div) загружается в виде сообщения электронной почты (в идеале заголовок также должен отображаться в поле заголовка электронной почты). При щелчке по другому заголовку и отображению другого текста, конечно, этот текст должен быть отправлен по электронной почте.
Мое знание JavaScript ограничено, и я еще новичок в jQuery. Мой проект основывается на этом важном решении: How to display a second JSON element in JavaScript?, но, я думаю, также тесно связан с Create a function to send mail from a div. Очень важно, чтобы решение было легким, JavaScript только одностраничный скрипт не является вариантом.
Я был бы очень признателен за демонстрацию, JavaScript или jQuery, как это решить (я полагаю, что это функция body = [...] в функции snd()), и извините заранее, если это слишком наивный или слишком обманчиво простой вопрос.
Мой сценарий выглядит следующим образом:
<body>
<script src="jquery.js"></script>
<script type="text/javascript">
var article = [
{
"title": "This is title no. 1",
"text": "Here is the text of the first article"
},
{
"title": "This is title no. 2",
"text": "Here is the text of the second article"
},
{
"title": "This is title no. 3",
"text": "Here is the text of the third article"
}
]
function getData() {
var html = '';
for(i = 0; i < article.length; i++) {
html += "<li data-text='" + "'>" + article[i].title.link(article[i].text) + "</li>";
}
$('#showData').html('<ul>' + html + '</ul>');
$('#showData').on('click', 'a', function(e)
$('#showData .text').remove();
$(this).after('<div class="text">' + $(this).attr('href') + '<p><button onclick="snd(); return false">Send email</button></div>');
e.preventDefault();
});
}
function snd() {
location.href = "mailto:"+"?subject=Article to read&body="+document.getElementsByClassName('description').innerHTML;
}
$(document).ready(function() {
getData();
});
</script>
<div id="showData"></div>
</body>