アプリ版:「スタンプのみでお礼する」機能のリリースについて

こんばんわ

問い合わせフォームを作成していて困ってます。
商品ページがあり、画像をクリックしたら商品詳細情報をパラメータで保持して次ページに表示させるところまではできたのですが、次ページの問い合わせ項目にあるテキストボックスに入力されたものと合わせてメール本文に表示させたいのにできません。

以下のコードのsample1.2.3をどのようにメールに表示させればよいでしょうか?
どなたかご教示お願いします!

抜粋---------------------------------------------------------------
<!--------前ページから値を保持 次ページに表示-------->
<script type="text/javascript">
window.onload = function() {

var urlPrm = new Object;
var urlSearch =unescape(location.search.substring(1)).split('&');

for(i=0;urlSearch[i];i++) {
  var kv = urlSearch[i].split('=');
  urlPrm[kv[0]]=kv[1];
}

var divObj = document.getElementById("sample1");
divObj.textContent =(urlPrm.hoge1);
var divObj = document.getElementById("sample2");
divObj.textContent =(urlPrm.hoge2);
var divObj = document.getElementById("sample3");
divObj.textContent =(urlPrm.hoge3);

}
</script>
<!-------- 新しいページに表示-------->
<div id="sample1"></div>
<div id="sample2"></div>
<div id="sample3"></div>
<!-------- 新しいのテキストボックス-------->
<input type="text" id="name" >
<input type="text" id="tel" >
<textarea id="body" ></textarea>
<input type="submit" value="送信" onclick="send()" >

<!-------- 上2つを合わせた内容をメールで送る-------->
<script>
function send() {
mail = "〇〇〇@×××.com?"

var sample1 = document.getElementById("sample1").value; ←undefinedになる
var sample2 = document.getElementById("sample2").value; ←undefinedになる
var sample3= document.getElementById("sample3").value; ←undefinedになる
var name = document.getElementById("name").value;
var tel = document.getElementById("tel").value;
var body = document.getElementById("body").value;

location.href = "mailto:" + mail
+ "&subject=【タイトル】" + encodeURIComponent(sample1)
+ "&body=【1】" + encodeURIComponent(sample2) + "【2】" + encodeURIComponent(sample3)
+ "【3】" + encodeURIComponent(name) + "【4】" + encodeURIComponent(tel)
+ "【5】" + encodeURIComponent(body);

};

</script>

--------------------------------------------------------------------

A 回答 (1件)

こんにちは



>divObj.textContent =(urlPrm.hoge1);
>document.getElementById("sample1").value; ←undefinedになる
代入する時にtextContentで代入しているのですから、textContentで取得してみては?
(value属性に入力値が入るのは、input要素他だけに限られます)

あるいは、最初に変数urlPrmに値を入れているので、そこから直接取得してもよいでしょう。
(現状のままだと、onload時の匿名関数内でのスコープになっているので、外部から参照はできませんが、グローバルな変数にしておく等とすることで参照可能になります)
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!