J03 ページタイトルを自動添付して送信する

J02ではinput type="hidden"のvalueにページのメモなどを手で書き込んでいますが、ページのタイトル名を返す document.title 命令を使って自動的にスクリプトに読み取らせて送ることもできます。これなら、改造なしでどのページに貼り込んでもそれぞれのページタイトルが受け取れます。*onSubmitの部分はJ01を参照してください。


応用:011や902などと組み合わせて使うと良いでしょう。
参照: function, バージョンチェックif(navigator.appVersion.charAt(0)>=バージョン番号){命令}, encoding, value, document.title, onSubmit, hidden,

Sample

送信後メールを確認してみてください。


あなたのメールアドレス(xx@xxxx.or.jp)と?subject=のあとにメールタイトルを入力してください。

このサンプルは簡単に試せるように宛先のメールアドレスを画面から入力するようにしてあります(参照 : action)。実際にはソースの中の"mailto:xx@xxxx.or.jp"の部分に自分のアドレスを書き込んで使ってください。



Source
ソース
(コピーしてお使いください)

<html>
<head>
<title></title>

<script language="JavaScript">
<!--

function SimpleJ03(){
  if(navigator.appVersion.charAt(0)>=3)
    document.f1.encoding='text/plain'
  document.f1.Page.value=document.title
}

//-->
</script>

</head>
<body>

<form name="f1"
      method="post"
      action="mailto:xx@xxxx.or.jp?subject=test"
      onSubmit="SimpleJ03()">

  <input type="hidden" name="Page">
  <input type="text" name="データ1">
  <input type="submit" value=" 送信 "><br>
  "mailto:xx@xxxx.or.jp"を自分のアドレスに書き換えて送信してみてください。

</form>

</body>
</html>
functionは関数(複数のスクリプトをまとめて名前をつけたもの)を作る命令で、この場合のSimpleJ03()は関数名です

if(navigator.appVersion.charAt(0)>=3){命令}は、もしブラウザのバージョンが3以上なら命令を実行します

document.f1.encoding='text/plain'は、f1という名前のフォームの送信形式を'text/plain'タイプ、つまり文字化けしない普通のテキストにします

document.f1.Page.value=document.titleはフォームf1のPageという名前のエレメント(ここでは<input type="hidden" name="Page">のこと)の値としてこのページのタイトル名(titleタグに書いた名前か未記入ならそのページのファイル名)にするということです

onSubmit="命令"は送信ボタンが押されたら命令を実行します

hiddenの値として入れることで送信時に他の入力データと一緒にその値が送信されます

action= のあとに送信先のアドレス(mailto:xx@xxxx.or.jpなど//普通は自分のアドレス)を記入し?subject=のあとにタイトルを書いて使ってください(ただしsubjectに日本語は文字化けしやすいので今のところあまりおすすめしません)


Contents
| CONTENTS
| PART1 これだけ知っていれば大丈夫
| PART2 サンプルの紹介
| PART3 JavaScript言語仕様
| PART4 JavaScriptクイック書式一覧
| PART5 JavaScriptサイト
| オンラインサポートページ(回線をつないでください)


Maintained by
tato@fureai.or.jp works1997 Toshirou Takahashi