メーラーを利用して、データベース化かが目標

このQ&Aのポイント
  • JavaScriptを利用してメールフォームを作成し、データベース化を目指しています。
  • IE11では複数のメールソフトが立ち上がる問題が発生しています。
  • 対応策として、10個以上の入力項目がある場合でも、1つのメールソフトしか立ち上がらないようにしたいです。
回答を見る
  • ベストアンサー

メーラーを利用して、データベース化かが目標

http://jsfiddle.net/sdtkc/Nj7EL/ で以上HPを開いた状態で   キーの”Ctrl+S”で保存すると    「Edit fiddle - JSFiddle_files」フォルダができて  その中に31個のファイルができます。  その中ファイルに saved_resource.htmがあります。   そのファイルは   ”姓・名” の ”入力項目”が2個あります。  入力項目を増やしたくて、仕様を変更中です。   それで!  ”入力項目を試しに10個作成”を試みました。      項目を増やすのは成功したのですが!  ところが、IE11はメールソフトが10個ぐらい立ち上がって  使い物になりません!?          一枚のメールしか立ち上がらない様にして!   ”10入力項目”ぐらい入力できるように、仕様を変えたいのですが  出来るでしょうか!?    無理でしたら、せめて、5個ぐらいでもいいです。     以下のプログラムは私がいじった、問題のプログラムです。  よろしくお願いいたします。   <!DOCTYPE html> <!-- saved from url=(0042)http://fiddle.jshell.net/sdtkc/Nj7EL/show/ --> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title> - jsFiddle demo by sdtkc</title> <script type="text/javascript" src="jquery-2.1.0.js"></script> <link rel="stylesheet" type="text/css" href="result-light.css"> <style type="text/css"></style> <script type="text/javascript"> //<![CDATA[ $(window).load(function(){ $('form').bind('submit', function () { var mailSubject = 'テストメール'; var mailBody = 'テストメールです。%0D%0A'; var mailAddress = 'test@testtest.com'; mailBody += '姓:' + $('#lastname').val() + '%0D%0A' mailBody += '名:' + $('#firstname').val(); location.href = 'mailto:' + mailAddress + '?subject=' + mailSubject + '&body=' + mailBody; mailBody += '姓:' + $('#lastname').val() + '%0D%0A' mailBody += '名:' + $('#firstname').val(); location.href = 'mailto:' + mailAddress + '?subject=' + mailSubject + '&body=' + mailBody; mailBody += '姓:' + $('#lastname').val() + '%0D%0A' mailBody += '名:' + $('#firstname').val(); location.href = 'mailto:' + mailAddress + '?subject=' + mailSubject + '&body=' + mailBody; mailBody += '姓:' + $('#lastname').val() + '%0D%0A' mailBody += '名:' + $('#firstname').val(); location.href = 'mailto:' + mailAddress + '?subject=' + mailSubject + '&body=' + mailBody; mailBody += '姓:' + $('#lastname').val() + '%0D%0A' mailBody += '名:' + $('#firstname').val(); location.href = 'mailto:' + mailAddress + '?subject=' + mailSubject + '&body=' + mailBody; mailBody += '姓:' + $('#lastname').val() + '%0D%0A' mailBody += '名:' + $('#firstname').val(); location.href = 'mailto:' + mailAddress + '?subject=' + mailSubject + '&body=' + mailBody; mailBody += '姓:' + $('#lastname').val() + '%0D%0A' mailBody += '名:' + $('#firstname').val(); location.href = 'mailto:' + mailAddress + '?subject=' + mailSubject + '&body=' + mailBody; mailBody += '姓:' + $('#lastname').val() + '%0D%0A' mailBody += '名:' + $('#firstname').val(); location.href = 'mailto:' + mailAddress + '?subject=' + mailSubject + '&body=' + mailBody; mailBody += '姓:' + $('#lastname').val() + '%0D%0A' mailBody += '名:' + $('#firstname').val(); location.href = 'mailto:' + mailAddress + '?subject=' + mailSubject + '&body=' + mailBody; mailBody += '姓:' + $('#lastname').val() + '%0D%0A' mailBody += '名:' + $('#firstname').val(); location.href = 'mailto:' + mailAddress + '?subject=' + mailSubject + '&body=' + mailBody; return false; }); });//]]> </script> </head> <body> <form method="post" action="http://fiddle.jshell.net/sdtkc/Nj7EL/show/#"> <label for="lastname">姓</label> <input id="lastname" type="text"> <label for="firstname">名</label> <input id="firstname" type="text"> <label for="lastname">姓</label> <input id="lastname" type="text"> <label for="firstname">名</label> <input id="firstname" type="text"> <label for="lastname">姓</label> <input id="lastname" type="text"> <label for="firstname">名</label> <input id="firstname" type="text"> <label for="lastname">姓</label> <input id="lastname" type="text"> <label for="firstname">名</label> <input id="firstname" type="text"> <label for="lastname">姓</label> <input id="lastname" type="text"> <label for="firstname">名</label> <input id="firstname" type="text"> <input type="submit" value="submit"> </form> </body></html

  • HTML
  • 回答数1
  • ありがとう数5

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

mailtoでできるのはメーラーをむりくり開くくらいなので ちゃんとやりたいならフォームメール的なサーバーサイドのプログラムが 必要になるでしょう

Campus2
質問者

お礼

ご回答真にありがとうございました。 mailto:http://www.shurey.com/js/mailto.html  使い物になるみたいですね!:リナックスWebサーバにまだ試していませんので!  何とも言えませんが!たぶん動くでしょう^^ 手が空いたら、HPに組み込みます。  電話よりメールが疲れないし・証拠も残るし・いいとこづくめです^^    

関連するQ&A

  • <a href=

    <a href="mailto:<%= mailaddress %>?subject=<%= name %>様ありがとうございます&body=<%= password1 %>"><%= mailaddress %></a> と書いた場合メールソフトが起動して メールが送信されるのですがこれを書いたメール アドレスに自動的に送信することはできませんか?

    • ベストアンサー
    • HTML
  • テキストボックスから、mailto

    ボタンからメール作成画面を起動させて、宛先と本文を入れておきたいです。 <INPUT type="button" value="メール" onclick="location.href='mailto:test_at_aaa.ne.jp?body=本文'"> <input type="text" value="" id="text1" name="text1"> <input type="text" value="" id="text2" name="text2"> text1の内容を本文、text2の内容をアドレスに 入れる事は出来るでしょうか? アットマークはサポート確認中になるので_at_で表しています。

  • new演算子のメリット・便利さは何でしょうか。

    javascriptのnew演算子(コントラスタとインスタンス)はどんなときに役立ちますか? function Member1とfunction Member2を比較した場合 <script type="text/javascript"> function Member1 (firstName, lastName) { return lastName + " " + firstName; } document.writeln(Member1('氏名', '名字')); // 「名字 氏名」と表示 //ここより下は参考書より var Member2 = function(firstName, lastName){ // thisはコンストラクタによって生成されるインスタンスを表す //this.プロパティ名 = 値;として記述する this.firstName = firstName; //firstNameというプロパティを生成 this.lastName = lastName; //lastNameというプロパティを生成 this.getName = function(){ return this.lastName + " " + this.firstName; } }; var mem = new Member2('氏名', '名字'); //オブジェクトの初期化 document.writeln(mem.getName()); // 「名字 氏名」と表示 </script> function Member1のような通常の方法でできることを、 なぜfunction Member2のようにnew演算子を使うのか、 そうすることで、どんなメリット・便利さがあるのかと思いました。 いろいろ調べたのですが解決できず、ご教示を頂こうと思いました。 よろしくお願いいたします。

  • フォームボタンをリンク風に表示

    <form action="mailto:"> <input type="hidden" name="subject" value="{subject}"> <input type="hidden" name="body" value="{body}"> <input type="submit" value="メール送信"> </form><br> メーラが立ち上がると、ディフォルトで件名と本文が入るようにしています。しかし、ブラウザー上でフォームの「ボタン」表示ではなく、「リンク」のような表示にしたいのですが何か方法はあるのでしょうか? <a href="mailto:"> これだと、ディフォルトでの表示ができなくなるし。

    • ベストアンサー
    • HTML
  • メーラーを使ったメール送信フォームで・・・

    こんにちは。 sendmailが使えないので、以下のように メーラーを使用してメール送信するフォームを設置しています。 <FORM method="POST" action="mailto:xxx@xxx.ne.jp?subject=【メール送信】" enctype="text/plain">  :  : <INPUT type="submit" value="送信" name="submit"> <INPUT type="reset" value="リセット" name="reset"> 送信ボタンを押しても画面がそのままなので、 送信後はトップページへ戻るよう案内をしています。 これを、送信ボタンを押した後に「ご利用ありがとうございました」などといった 別のページへジャンプするように設定する事は可能でしょうか? 不可能なら今のままでいこうと思っていますが、 もし方法があれば変更したいと思っています。 ご存知の方がいましたらご教授ください。 よろしくお願いします。

  • HPでメーラーを立ち上げずに送信する方法

    HPでメーラーを立ち上げずに送信する方法 HPにメールコンテンツを取り付けたのですが、送信テストをするたびにメーラーが 立ち上がってしまいます。 それも、記入した本文が反映されず、メーラーが表示されるまでに 「アドレスが受信者に公開され、フォームのデータが暗号化されずに送信されます。送信は続行も出来ますが取り消すことも出来ます」というメッセージが表示され、OKをクリックすると 別窓で空白のページが表示され、その上にメーラーを立ち上げるかどうかのメッセージが表示されます。 許可するをクリックすると空白のページだったものがインターネットに接続出来なかったときのページに変わり、その上にメーラーが表示されます。 そのメーラーには私のメールアドレスと、指定したsubjectは反映されていますが やはり本文が反映されていません。 他のサイトでコメントをしたときはメーラーは開かず、そのまますんなりコメント出来たのですが、 どのようにしたらメーラーを開かずに送信出来るようになるのでしょうか? 以下のソースをbodyタグの中に入れています。 <FORM ACTION="mailto:(この部分にアドレスを入れています)?Subject=(subject名)" METHOD="post" ENCTYPE="text/plain"> <div align="center"> <table border="0"><tr> <TD ALIGN="right" WIDTH="223"> <table border="0"> <tr><td>Name</td> <td><input type="text"size="25" name="名前"></td></tr> <tr><td>Mail</td> <td><input type="text"size="25" name="Eメール"></td></tr> <tr><td>HomeURL</td> <td><input type="text"size="25" name="URL"></td></tr> <tr><td>Mssage</td> <td><TEXTAREA NAME="メッセージ" COLS="23" ROWS="5"></TEXTAREA></td></tr></table> <BR> <INPUT TYPE="submit" NAME="submit" VALUE="Go!"> <input type="reset"value="Reset"> </FORM> 何か記載漏れがありましたらお手数ですがご指摘下さい。 どなたかご指南をお願い致します!

  • 入力フォームについて

    FC2のホームページを利用しています 入力フォームのサンプルを手本にして、以下のように作成しましたが 「送信ボタン」をクリックしても、メールが届きません。 どうしてでしょうか? <form action="mailto:xxx@xxx.ne.jp" enctype="text/plain" method="post"> <p><label>NAME:<br /> <input type="text" name="名前" value="" tabindex="1" accesskey="b"> </label></p> <p><label>E-MAIL:<br /> <input type="text" name="メールアドレス" value="" tabindex="2" accesskey="a"> </label></p> <p><label>感想・ご意見<br> <textarea name="title" rows="15" cols="30" tabindex="9" accesskey="i"> </textarea> </label></p> <p> <input type="reset" value="送信" tabindex="10" accesskey="s"> <input type="reset" value="取消" tabindex="11" accesskey="r"> </p> </form>

  • PHPからJavaScriptの自動遷移プログラムを起動させたいのです

    PHPからJavaScriptの自動遷移プログラムを起動させたいのですが、 現在、次の形のPHPプログラムで自動遷移のJavaScriptを呼び出しています。 /* authorization URL を生成*/ $request_link = $to->getAuthorizeURL($token); $val ="location.href = \"" . $request_link . "\""; echo $val; $val ="</head></html>"; echo $val; そうすると、実行画面で、なぜか <script type="text/javascript"> <!-- location.href = "https://twitter.com/oauth/authenticate?oauth_token=*****"</head></html> と出力されて、JavaScriptが起動していません。 どのように組み替えればいいでしょうか? 単純なことで申し訳ありませんが、ご教授願います。

    • ベストアンサー
    • PHP
  • javascript フォームについて

    javascriptでフォームを作ったのですが、複数フォームの空白をチェックするにはどのようなプログラムにすればよろしいでしょうか? onsubmit="return chk1(this)でフォーム送信が押されたときにチェックを行おうと考えているのですが そのときのchk()の中身やif文の条件がわからないのです。 どのようにすれば上手くいくでしょうか? 回答よろしくお願いします。 ソースは以下のとおりです。 <script language="javascript"> function send() { document.nform.submit(); document.nform2.submit(); document.nform3.submit(); } function chk1(frm){ if(frm.elements["txt1"].value==""){ alert("解答欄に空白があります"); /* FALSEを返してフォームは送信しない */ return false; }else{ /* TRUEを返してフォーム送信 */ return true; } } </script> <form name="nform" method="POST" action="mailto:webmaster@a.com?subject=問い合せ" enctype="text/plain"> <p>問1</p> <p> (1)<input type="text" name="kaitouran11" size="20"> (2)<input type="text" name="kaitouran12" size="20"> (3)<input type="text" name="kaitouran13" size="20"> (4)<input type="text" name="kaitouran14" size="20"> </p> </form> <form name="nform2" method="POST" action="mailto:webmaster@leposystems.com?subject=問い合せ" enctype="text/plain"> <p>問2</p> <p> (1)<input type="text" name="kaitouran21" size="20"> (2)<input type="text" name="kaitouran22" size="20"> (3)<input type="text" name="kaitouran23" size="20"> (4)<input type="text" name="kaitouran24" size="20"> </p> </form> <form name="nform3" method="POST" action="mailto:webmaster@leposystems.com?subject=問い合せ" enctype="text/plain"> <p>問3</p> <p> (1)<input type="text" name="kaitouran31" size="20"> (2)<input type="text" name="kaitouran32" size="20"> (3)<input type="text" name="kaitouran33" size="20"> (4)<input type="text" name="kaitouran34" size="20"> </p> </form> <input type="button" value="送信" onClick="send()" onsubmit="return chk1(this)">

  • onChangeだと思うのですが・・・

    <FORM> <SELECT> <OPTION selected>タイトル</OPTION> <OPTION>タイトル2</OPTION> <OPTION>タイトル3</OPTION> </SELECT> <input type="button" value="ボタン" onClick="location.href='mailto:xxx@xxx?subject=タイトル'"> </FORM> セレクトの選択に合わせてメールのタイトルを変えたいのですが うまくいきません。 onChangeを使うとフォームの値としては取得はできますが・・・ 上記のような場合はどうすればよいのでしょうか? 教えてください。よろしくおねがいします。 仕事の関係で至急作らなくてはいけなくなりまして、 困っています。

専門家に質問してみよう