前提・実現したいこと
仕事で、URLからhtmlを開くと別のURL(filemaker)に自動遷移をして、HTMLは、自動的に閉じるように設定して、
遷移する際に、URLから取得したパラメータを遷移先(filemaker)にも持っていけるように実現したいです。
その為、開発をしておりますが、HTMLとjavascriptは、初心者の為、躓いております。
自動遷移の部分とURLからのパラメータ取得を単独では、うまくいけたのですが、結合すると上手くいきません。
パラメータをHTML上で表示させようとするとブランクとなってしまいます。どのようにすればいいのでしょうか?
また、遷移先のURLを取得したパラメータをみて、URLの値を変化させることは可能でしょうか?
現在のコードは、こちらです。HTMLのbodyを記載しております。遷移先は、Yahoo!にしておりますが、実際は、filemakerのファイル名とスクリプトを設定します。
該当のソースコード
HTML
1 2<body> 3 <!-- <div>ページ遷移します。</div> --> 4 <!-- <p>3秒後にサブウィンドウが閉じられます。</p> --> 5 <!-- <p>URL上に設定されたパラメータは以下となります。</p> --> 6 <form name="form1" action="#"> 7 着信番号 :<input type="text" name="getpram1" size="50" /> 8 </form> 9 <form name="form2" action="#"> 10 受電番号 :<input type="text" name="getpram2" size="50" /> 11 </form> 12 <form name="form3" action="#"> 13 受電者 :<input type="text" name="getpram3" size="50" /> 14 </form> 15 <form name="form4" action="#"> 16 窓口 :<input type="text" name="getpram4" size="50" /> 17 </form> 18 <form name="form5" action="#"> 19 タイミング :<input type="text" name="getpram5" size="50" /> 20 </form> 21 <form name="form6" action="#"> 22 ユニークID:<input type="text" name="getpram6" size="50" /> 23 </form> 24 <form name="form7" action="#"> 25 発生時間 :<input type="text" name="getpram7" size="50" /> 26 </form> 27 <script type="text/javascript"> 28 window.onload=getdata; 29 setTimeout("subwin()", 3000); 30 var strSearchWord = str1 31 location.href = "https://www.example.com/search?q=" & strSearchWord; 32 function subwin(){ 33 <!-- window.close(); // サブウィンドウを閉じる --> 34 // window.open('about:blank','_self').close(); // サブウィンドウを閉じる 35 } 36 function getdata(){ 37 var str1 = ""; 38 var str2 = ""; 39 var str3 = ""; 40 var str4 = ""; 41 var str5 = ""; 42 var str6 = ""; 43 var str7 = ""; 44 45 if(window.location.search){ 46 var url = window.location.search; 47 var url_data = url.substring(1).split('&'); 48 for (var i = 0; i < url_data.length; i++) { 49 if (url_data[i].indexOf("ani=") != -1 ){ 50 str1 = url_data[i].replace("ani=",""); 51 } 52 if (url_data[i].indexOf("dnis=") != -1 ){ 53 str2 = url_data[i].replace("dnis=",""); 54 } 55 if (url_data[i].indexOf("agent_id=") != -1 ){ 56 str3 = url_data[i].replace("agent_id=",""); 57 } 58 if (url_data[i].indexOf("skill=") != -1 ){ 59 str4 = url_data[i].replace("skill=",""); 60 } 61 if (url_data[i].indexOf("type=") != -1 ){ 62 str5 = url_data[i].replace("type=",""); 63 } 64 if (url_data[i].indexOf("ucid=") != -1 ){ 65 str6 = url_data[i].replace("ucid=",""); 66 } 67 if (url_data[i].indexOf("timestamp=") != -1 ){ 68 var ts = url_data[i].replace("timestamp=",""); 69 var d = new Date( ts * 1000 ); 70 var year = d.getFullYear(); 71 var month = d.getMonth() + 1; 72 var day = d.getDate(); 73 var hour = ( d.getHours() < 10 ) ? "0" + d.getHours() : d.getHours(); 74 var min = ( d.getMinutes() < 10 ) ? "0" + d.getMinutes() : d.getMinutes(); 75 var sec = ( d.getSeconds() < 10 ) ? "0" + d.getSeconds() : d.getSeconds(); 76 str7 = year + "-" + month + "-" + day + " " + hour + ":" + min + ":" + sec; 77 } 78 } 79 <!-- URL等の各種パラメータをテキストボックスに設定 --> 80 document.form1.elements["getpram1"].value=str1; 81 document.form2.elements["getpram2"].value=str2; 82 document.form3.elements["getpram3"].value=str3; 83 document.form4.elements["getpram4"].value=str4; 84 document.form5.elements["getpram5"].value=str5; 85 document.form6.elements["getpram6"].value=str6; 86 document.form7.elements["getpram7"].value=str7; 87 } 88 } 89 </script> 90</body> 91
回答2件
あなたの回答
tips
プレビュー