Открыть новое электронное письмо в приложении по умолчанию с Javascript

Я ценю любую помощь в этом. Я новичок. Я настраиваю настройку OwnCloud, в которой есть отличная настройка для обмена ссылкой, созданной приложением через внутреннюю систему, но мне нужно, чтобы открыть электронное письмо в почтовом приложении по умолчанию (например, Outlook) и получить ссылку в электронном письме., Я надеюсь настроить код, который уже есть. Существует файл share.js и файл share.php. Вот выдержки из share.js:

Вариант 1 - в области формы этого действия содержится ссылка, которую я хотел бы включить в электронное письмо:

        html += '<label for="linkText" class="hidden-visually">'+t('core', 'Link')+'</label>';
        html += '<input id="linkText" type="text" readonly="readonly" />';
        html += '<input type="checkbox" name="showPassword" id="showPassword" value="1" style="display:none;" /><label for="showPassword" style="display:none;">'+t('core', 'Password protect')+'</label>';
        html += '<div id="linkPass">';
        html += '<label for="linkPassText" class="hidden-visually">'+t('core', 'Password')+'</label>';
        html += '<input id="linkPassText" type="password" placeholder="'+t('core', 'Choose a password for the public link')+'" />';
        html += '<span class="icon-loading-small hidden"></span>';
        html += '</div>';

Я попытался изменить его несколькими способами, такими как:

        html += '<form method="POST" action="mailto:kyle.s@pandplandservice.com?body=Link">';
        html += '<label for="linkText" class="hidden-visually">'+t('core', 'Link')+'</label>';
        html += '<input id="linkText" type="text" readonly="readonly" />';
        html += '<input type="checkbox" name="showPassword" id="showPassword" value="1" style="display:none;" /><label for="showPassword" style="display:none;">'+t('core', 'Password protect')+'</label>';
        html += '<div id="linkPass">';
        html += '<label for="linkPassText" class="hidden-visually">'+t('core', 'Password')+'</label>';
        html += '<input id="linkPassText" type="password" placeholder="'+t('core', 'Choose a password for the public link')+'" />';
        html += '<span class="icon-loading-small hidden"></span>';
        html += '<br />';
        html += '<input type="submit" value="Send Link" />';
        html += '</form>';
        html += '</div>';

И тогда я получаю электронное письмо, чтобы открыть, но оно не содержит ссылку.

Вариант 2. Это часть формы, которая отправляет сообщение из приложения, но мне нужно, чтобы оно открыло сообщение электронной почты, содержащее те же данные, которые оно отправило бы внутри (или, по крайней мере, по ссылке):

                            html += '<form id="emailPrivateLink">';
            html += '<input id="email" style="display:none; width:62%;" value="" placeholder="'+t('core', 'Email link to person')+'" type="text" />';
            html += '<input id="emailButton" style="display:none;" type="submit" value="Send Email" />';

И часть файла js, на которую ссылается эта форма:

$(document).on('submit', '#dropdown #emailPrivateLink', function(event) {
    event.preventDefault();
    var link = $('#linkText').val();
    var itemType = $('#dropdown').data('item-type');
    var itemSource = $('#dropdown').data('item-source');
    var file = $('tr').filterAttr('data-id', String(itemSource)).data('file');
    var email = $('email').val();
    var expirationDate = '';
    if ( $('#expirationCheckbox').is(':checked') === true ) {
        expirationDate = $( "#expirationDate" ).val();
    }
    if (email !='') {
        $('#email').prop('disabled', true);
        $('#email').val(t('core', 'Sending ...'));
        $('#emailButton').prop('disabled', true);
        $.post(OC.filePath('core', 'ajax', 'share.php'), { action: 'email', toaddress: email, link: link, itemType: itemType, itemSource: itemSource, file: file, expiration: expirationDate},
            function(result) {
                $('#email').prop('disabled', false);
                $('#emailButton').prop('disabled', false);
            if (result && result.status == 'success') {
                $('#email').css('font-weight', 'bold');
                $('#email').animate({ fontWeight: 'normal' }, 2000, function() {
                    $(this).val('');
                }).val(t('core','Email Sent'));
            } else {
                OC.dialogs.alert(result.data.message, t('core', 'Error while sharing'));

Любая помощь приветствуется.

1 ответ

function sendMail() {
    var link = "mailto:me@example.com"
             + "?cc=myCCaddress@example.com"
             + "&subject=" + escape("This is my subject")
             + "&body=" + escape("This is content of email")
    ;

    window.location.href = link;
}

Отправка писем с помощью Javascript

Другие вопросы по тегам