現在、Webページのフォームに入力された情報をCSVにして、遷移先のページにQRコードにして表示したいと考えております。
#フォーム項目例
・名前(テキストボックス)
・住所(テキストボックス)
・製品名(テキストボックス)
javascript(JQuery)で実現したいと考えております。
#入力フォームは以下のとおりです。
該当のソースコード
遷移元
HTML
1<form action="#" method="get" name="form1" onsubmit="return send();"> 2 <fieldset> 3 <legend>パラメータに渡す値を入力</legend> 4 <table style="text-align: left;"> 5 <tr> 6 <th>名前</th> 7 <td><input size="50" type="text" name="名前" /></td> 8 </tr> 9 <tr> 10 <th>住所</th> 11 <td><input size="50" type="text" name="住所" /></td> 12 </tr> 13 <tr> 14 <th>商品名</th> 15 <td><input size="50" type="text" name="商品名" /></td> 16 </tr> 17 <p> 18 <input type="submit" value="送信" /> 19 </p> 20 </fieldset> 21</form> 22 23
Javascript
1 function send() { 2 var name=""; 3 var address=""; 4 var item=""; 5 /* 名前(変換) */ 6 if (document.form1.name.value!=""){ 7 name=escape(document.form1.name.value); 8 } 9 /* 住所 */ 10 if (document.form1.address.value!=""){ 11 name=escape(document.form1.address.value); 12 } 13 /* 商品 */ 14 if (document.form1.item.value!=""){ 15 name=escape(document.form1.item.value); 16 } 17 favorite=escape(favorite); 18 /* パラメータにセット*/ 19 var pram="name="+name+"&address="+address+"&address="+address; 20 /* アドレスに付加 */ 21 location.href="/module/include/js/location4/test2.html?"+pram; 22 return false; 23 }
遷移先
HTML
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 5 <meta http-equiv="Content-Script-Type" content="text/javascript"> 6 <title>PHP & JavaScript Room: test2.html</title> 7 <script type="text/javascript"> 8 /* 受取る側 */ 9 function pramWrite() { 10 /* アドレスの「?」以降の引数(パラメータ)を取得 */ 11 var pram=location.search; 12 13 if (!pram) return false; 14 15 pram=pram.substring(1); 16 17 var pair=pram.split("&"); 18 var i=temp=""; 19 var key=new Array(); 20 for (i=0; i < pair.length; i++) { 21 temp=pair[i].split("="); 22 keyName=temp[0]; 23 keyValue=temp[1]; 24 key[keyName]=keyValue; 25 } 26 var name=address=item=""; 27 28 if (!key["name"] || key["name"]==""){ 29 name="お名前が記入されておりません"; 30 }else{ 31 /* コード変換 */ 32 name=unescape(key["name"]); 33 } 34 35 36 if(key["address"]!="") { 37 address=unescape(key["address"]); 38 }else{ 39 address="住所が記入されておりません"; 40 } 41 42 if(key["item"]){ 43 item=key["item"]; 44 }else{ 45 item+="商品が記入されておりません"; 46 } 47 document.form1.pram.value="名前:"+name+"\n"+"性別:"+address+"\n"+"趣味:"+unescape(item)+"\n"; 48 } 49 </script> 50 </head> 51 <body onload="pramWrite()"> 52 <form name="form1" action="#"> 53 <fieldset> 54 <legend>パラメータを表示</legend> 55 <textarea cols="40" rows="4" name="pram" style="border:0;overflow:visible" readonly="readonly"></textarea> 56 </fieldset> 57 </form> 58 </body> 59 60<script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" 61 crossorigin="anonymous"></script> 62 <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script> 63 <script src="js/jquery.qrcode.min.js"></script> 64 <script src="js/encoding.min.js"></script> 65 <script type="text/javascript"> 66 $(document).ready(function () { 67 68 $("button[name='size']").on("click" { 69 var source = Encoding.convert($('#value').val(), 'SJIS') 70 71 $('#QRCode').html("").qrcode({ 72 text: source, 73 ); 74 75 }) 76 }) 77 </script> 78</html>
フォーム入力されたページの名前・住所・商品名をcsvにして、それを遷移先のページ(帳票形式)でQRコード(日本語)として表示したいと考えております。(帳票の体裁はまだできておりません)
帳票のわきに一つ表示できればと考えております。
受け取った値をどうやってjavascript側で受け取って、表示するか行き詰まっております。
どうかよろしくご教示ください。
回答1件
あなたの回答
tips
プレビュー