あるページからメールフォームのページへリンクした時に、特定の文字列がメールフォームの「件名」欄に入るようにしたいと思っています。
送る(リンクする)ページには
<a href="http://www.villaangelica.to/cgi-bin/postmail01/postmail2.html?modefg=2010&xxx=02&yyy=28&zzz=14:00?subject=2010/02/28">
というリンク要素を置いています。
リンクされる側のHTMLにはフォームタグがあり、その中へ<input>要素と、日付情報を取得するjavascriptを設置してあります。
<input type="hidden" name="date" value="subject">
<script type="text/javascript">
function getHikisuu(){
-中略-
document.write("" + getHikisuu.data.modefg +" ");
document.write("" + getHikisuu.data.xxx +" ");
document.write("" + getHikisuu.data.yyy +" ");
document.write("" + getHikisuu.data.zzz +"");
document.write("</p>");
</script>
というものです。
サーバーへ設置して稼働させてみたのですが、どうしても送られてくるメールのSubjectに必要な情報が入ってきません。
要点は、このHTMLファイルから「2010/02/28/14:00」という情報をメールフォームへ渡し、その情報がメールに入った状態で送信されたい、という事です。
よろしくお願いいたします。
「date = subject」となって送信されてくるのでしたら、次の値が送信されているのだと思います。
<input type="hidden" name="date" value="subject">
この値を書き換えて送信すると良さそうです。
まず、ご紹介する方法で動作するように、上記タグに「id="date"」を追加します。
<input type="hidden" name="date" id="date" value="subject">
次に、prototype.jsを使用しますので、以下からダウンロードします。
http://www.prototypejs.org/download
headタグ内に読み込む記述を追加します。
<script type="text/javascript" src="prototype.js"></script>
次の記述を
new getHikisuu(); document.write("<p>"); document.write("" + getHikisuu.data.modefg +" "); document.write("" + getHikisuu.data.xxx +" "); document.write("" + getHikisuu.data.yyy +" "); document.write("" + getHikisuu.data.zzz +""); document.write("</p>");
以下のように変更します。
new getHikisuu(); var datetext = getHikisuu.data.modefg +"/" + getHikisuu.data.xxx +"/" + getHikisuu.data.yyy +" " + getHikisuu.data.zzz +""; document.write("<p>"); document.write(datetext); document.write("</p>"); var elem = $('date'); elem.setAttribute("value", datetext);
これで確認してみてください。
※なお、リンクには以下のように記述してください。
(今回の方法では、「&subject=2010/02/28」は使用していませんので、必要ありません。)
<a href="http://www.villaangelica.to/cgi-bin/postmail01/postmail2.html?modefg=2010&xxx=02&yyy=28&zzz=14:00">XXXXX</a>
※何か分からない事がある場合は、コメント欄を開けてくださった方が、やり取りしやすいです。
早速ありがとうございます。
ソースを変更して試してみましたが、結果は「subject」という文字が入ってくるだけでした。
「2010/02/28/14:00」をURLエンコードする必要があります。
&subject=2010%2F02%2F28%2F14%3A00
としてください。
「date = subject」となって送信されてくるのでしたら、次の値が送信されているのだと思います。
<input type="hidden" name="date" value="subject">
この値を書き換えて送信すると良さそうです。
まず、ご紹介する方法で動作するように、上記タグに「id="date"」を追加します。
<input type="hidden" name="date" id="date" value="subject">
次に、prototype.jsを使用しますので、以下からダウンロードします。
http://www.prototypejs.org/download
headタグ内に読み込む記述を追加します。
<script type="text/javascript" src="prototype.js"></script>
次の記述を
new getHikisuu(); document.write("<p>"); document.write("" + getHikisuu.data.modefg +" "); document.write("" + getHikisuu.data.xxx +" "); document.write("" + getHikisuu.data.yyy +" "); document.write("" + getHikisuu.data.zzz +""); document.write("</p>");
以下のように変更します。
new getHikisuu(); var datetext = getHikisuu.data.modefg +"/" + getHikisuu.data.xxx +"/" + getHikisuu.data.yyy +" " + getHikisuu.data.zzz +""; document.write("<p>"); document.write(datetext); document.write("</p>"); var elem = $('date'); elem.setAttribute("value", datetext);
これで確認してみてください。
※なお、リンクには以下のように記述してください。
(今回の方法では、「&subject=2010/02/28」は使用していませんので、必要ありません。)
<a href="http://www.villaangelica.to/cgi-bin/postmail01/postmail2.html?modefg=2010&xxx=02&yyy=28&zzz=14:00">XXXXX</a>
※何か分からない事がある場合は、コメント欄を開けてくださった方が、やり取りしやすいです。
ありがとうございます。
午後に試してみます。
コメント欄の事もありがとうございました。慣れないもので申し訳ありません。
これ以後は活用しようと思います。
ありがとうございます。
午後に試してみます。
コメント欄の事もありがとうございました。慣れないもので申し訳ありません。
これ以後は活用しようと思います。