0

私はこの小さな問題を抱えています。私は自分のhtmlページにこのjavascriptを持っています:

function myfunction(form)
            {
                var name = document.details.txtName.value + "\n";
                var street = document.details.txtStreet.value + "\n";
                var city = document.details.txtCity.value + "\n";
                var stateProvince = document.details.txtStateProvince.value + "\n";
                var postalCode = document.details.txtPostalCode.value + "\n";
                var country = document.details.txtCountry.value + "\n";
                var homeTel = document.details.txtHomeTel.value + "\n";
                var workTel = document.details.txtWorkTel.value + "\n";
                var fax = document.details.txtFax.value + "\n";
                var mobile = document.details.txtMobile.value + "\n";
                var email = document.details.txtEmail.value + "\n";
                var enquiry = document.details.txtEnquiry.value + "\n";

                var message = (name +
                               street + 
                               city + 
                               stateProvince + 
                               postalCode + 
                               country + 
                               homeTel + 
                               workTel + 
                               fax + 
                               mobile + 
                               email +
                               enquiry);
                alert(message);
                location='mailto:somecrazyassemail@gmail.com?subject=Message From Redec Website&body=' + message;
                return false; //So that the page can stay at its current location.

ポップアップするメッセージボックスに、必要な文字列が下に表示されます。

しかし、これが Outlook を開くと、すべてが 1 つの長い文字列になっています。どうすればこれを修正できますか? }

4

2 に答える 2

2

mailto は特定の属性です。関数を使用して文字列をエンコードする必要がありescapeます。

ただし、新しい行には%0D%0Aを使用できます。
詳細については、このサイトを参照してください。

于 2013-04-06T13:36:42.160 に答える
1

テキストを HTML として挿入しているため、改行文字'\n'は単純に として解析され'n'ます。改行を挿入するには、対応する HTML 要素を使用します<br>

例えば:

var name = document.details.txtName.value + "<br>";
//                                           ^^^^
于 2013-04-06T13:21:50.103 に答える