1/* ================================================================ * 2 ajaxzip2.js ---- AjaxZip2 éµä¾¿çªå·â使夿ã©ã¤ãã©ãª 3 4 Copyright (c) 2006-2007 Kawasaki Yusuke <u-suke [at] kawa.net> 5 http://www.kawa.net/works/ajax/ajaxzip2/ajaxzip2.html 6 7 Permission is hereby granted, free of charge, to any person 8 obtaining a copy of this software and associated documentation 9 files (the "Software"), to deal in the Software without 10 restriction, including without limitation the rights to use, 11 copy, modify, merge, publish, distribute, sublicense, and/or sell 12 copies of the Software, and to permit persons to whom the 13 Software is furnished to do so, subject to the following 14 conditions: 15 16 The above copyright notice and this permission notice shall be 17 included in all copies or substantial portions of the Software. 18 19 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 20 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 21 OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 22 NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 23 HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 24 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 25 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 26 OTHER DEALINGS IN THE SOFTWARE. 27* ================================================================ */ 28/* ================================================================ * 29 ElZip-2.1.js 30 ElZip.js ã¸æ¹å¤ ---- <takashi-kanno [at] e-life.co.jp> 31 2023.01.12 Ver2.0使 32 2023.12.21 Ver2.0.2ä»®å® 33/ 2026.04.23 Verã¢ãããã¼ãã«ä¼´ããã¡ã¤ã«åã®æ´æ° 34* ================================================================ */ 35 36ElZip = function () {}; 37ElZip.VERSION = '0.1'; 38ElZip.JSONDATA = '/ajaxzip/data/'; 39 40ElZip.REQ_URL = 'https://www.e-life.jp/bin/ajax/get_ajaxzip.cgi'; 41 42ElZip.PREFMAP = [ 43 null, 'åæµ·é', '鿣®ç', '岩æç', 'å®®åç', 44 'ç§ç°ç', '山形ç', 'ç¦å³¶ç', 'è¨åç', 'æ æ¨ç', 45 '群馬ç', 'å¼çç', 'åèç', 'æ±äº¬é½', 'ç¥å¥å·ç', 46 'æ°æ½ç', 'å¯å±±ç', 'ç³å·ç', 'ç¦äºç', '山梨ç', 47 'é·éç', 'å²éç', 'é岡ç', 'æç¥ç', 'ä¸éç', 48 'æ»è³ç', '京é½åº', '大éªåº', 'å µåº«ç', 'å¥è¯ç', 49 'åæå±±ç', 'é³¥åç', 'å³¶æ ¹ç', '岡山ç', 'åºå³¶ç', 50 'å±±å£ç', '徳島ç', 'é¦å·ç', 'æåªç', 'é«ç¥ç', 51 'ç¦å²¡ç', 'ä½è³ç', 'é·å´ç', 'çæ¬ç', '大åç', 52 'å®®å´ç', '鹿å å³¶ç', 'æ²ç¸ç' 53]; 54 55// ---------------------------------------------------------------- // 56// GetZipToAddr(JSONãã¡ã¤ã«åä¿¡) 57// m = 1 ã¯ä»ãã¡ã¤ã³æã®ã¿ã¨ãã 58// ---------------------------------------------------------------- // 59ElZip.GetZipToAddr = function (m, f_zip1, f_zip2, f_addr1, f_addr2, f_addr3) { 60 ElZip.fzip1 = ElZip.getElementByName(f_zip1); 61 ElZip.fzip2 = ElZip.getElementByName(f_zip2,f_zip1); 62 ElZip.faddr1 = ElZip.getElementByName(f_addr1,f_zip1); 63 ElZip.faddr2 = ElZip.getElementByName(f_addr2,f_zip1); 64 ElZip.faddr3 = ElZip.getElementByName(f_addr3,f_zip1); 65 66 if (m > 0) { 67 // ãæ¤ç´¢ãæ¼ä¸ 68 // å¤ãã»ããããã¦ããªãå ´åã¯éä¿¡ããªã 69 if ( (isset(ElZip.fzip1) && ElZip.fzip1.value == '') || !isset(ElZip.fzip1) ) { 70// alert('éµä¾¿çªå·ãå ¥åããã¦ãã¾ããã'); 71// ElZip.fzip1.focus(); 72 return false; 73 } 74 } 75 var cb = (m == 0 || m == 2) ? 1 : 0; 76 var vzip = ElZip.fzip1.value; 77 if(f_zip2!=''){ 78 if (ElZip.fzip2.value != '') vzip += ElZip.fzip2.value; 79 } 80 var nzip = ''; 81 for(var i=0; i<vzip.length; i++) { 82 var chr = vzip.charCodeAt(i); 83 if (chr < 48) continue; 84 if (chr > 57) continue; 85 nzip += vzip.charAt(i); 86 } 87 if (nzip.length < 7) return; 88 89 var zip3 = nzip.substr(0,3); 90 url = ElZip.JSONDATA+'zip-'+zip3+'.json'; 91 92 // JSONåå¾å¾ã®ã³ã¼ã«ããã¯é¢æ° 93 var func1 = function (data) { 94 var array = data[nzip]; 95 // Opera ãã°å¯¾çï¼0x00800000 ãè¶ ããæ·»å㯠+0xff000000 ããã¦ãã¾ã 96 var opera = (nzip-0+0xff000000)+""; 97 if (!array && data[opera]) array = data[opera]; 98 if (!array) return; 99 var pref_id = array[0]; // é½éåºçID 100 if (!pref_id) return; 101 var jpref = ElZip.PREFMAP[pref_id]; // é½éåºçå 102 if (!jpref) return; 103 var jcity = array[1]; 104 if (!jcity) jcity = ''; // å¸åºçºæå 105 var jarea = array[2]; 106 if (!jarea) jarea = ''; // çºåå 107 var jstrt = array[3]; 108 if (!jstrt) jstrt = ''; // çªå° 109 110 var jaddr = jcity + jarea + jstrt; 111 if (jaddr == '') return false;
112 113 // 使ãã»ãããã¦ãã©ã¼ã«ã¹ããã¦ãã 114 if (isset(ElZip.faddr1) != '' && isset(ElZip.faddr2) != '' && isset(ElZip.faddr3) != '') { 115 // é½éåºçã»å¸åºçºæã»çºå 116 //ElZip.faddr1.value = jpref; 117 ElZip.faddr3.focus(); 118 ElZip.SetAddr1(pref_id, jpref); 119 ElZip.faddr2.value = jcity; 120 ElZip.faddr3.value = jarea + jstrt; 121 ElZip.faddr3.focus(); 122 } else if (isset(ElZip.faddr1) != '' && isset(ElZip.faddr2) != '') { 123 // é½éåºçã»å¸åºçºæï¼çºå 124 ElZip.faddr2.focus(); 125 ElZip.SetAddr1(pref_id, jpref); 126 ElZip.faddr2.value = jaddr; 127 ElZip.faddr2.focus(); 128 } else { 129 // é½éåºçï¼å¸åºçºæï¼çºå 130 ElZip.faddr1.focus(); 131 ElZip.faddr1.value = jpref + jaddr; 132 ElZip.faddr1.focus(); 133 } 134 return true; 135 }; 136 137 if (cb == 1 && window.Ajax && Ajax.Request) { 138 // JSONãã¡ã¤ã«åä¿¡å¾ã®ã³ã¼ã«ããã¯é¢æ°ï¼Prototype.JSç¨ï¼ 139 var func2 = function (req) { 140 if (!req) return; 141 if (!req.responseText) return; 142 var json = ElZip.getResponseText(req); 143 func1(data); 144 }; 145 new Ajax.Request( url, { 146 method: "get", 147 asynchronous: true, 148 onComplete: func2 149 }); 150 } else if (cb == 1 && window.jQuery) { 151 // JSONãã¡ã¤ã«åä¿¡å¾ã®ã³ã¼ã«ããã¯é¢æ°ï¼Jquery.jsç¨ï¼ 152 $.getJSON(url, 153 function (data) { 154 func1(data); 155 }); 156 } else { 157 // ã¯ãã¹ãã¡ã¤ã³æcallbackãä½¿ç¨ 158 url = ElZip.REQ_URL + '?zip=' +nzip; 159 160 var sc = document.createElement("script"); 161 sc.type = "text/javascript"; 162 sc.charset = 'UTF-8'; 163 sc.src = url; 164 document.body.appendChild(sc); 165 } 166 167 return true; 168} 169 170// ã¯ãã¹ãã¡ã¤ã³æã®callback 171ElZip.CallBack = function (data, nzip) { 172 var array = data[nzip]; 173 // Opera ãã°å¯¾çï¼0x00800000 ãè¶ ããæ·»å㯠+0xff000000 ããã¦ãã¾ã 174 var opera = (nzip-0+0xff000000)+""; 175 if (!array && data[opera]) array = data[opera]; 176 if (!array) return; 177 var pref_id = array[0]; // é½éåºçID 178 if (!pref_id) return; 179 var jpref = ElZip.PREFMAP[pref_id]; // é½éåºçå 180 if (!jpref) return; 181 var jcity = array[1]; 182 if (!jcity) jcity = ''; // å¸åºçºæå 183 var jarea = array[2]; 184 if (!jarea) jarea = ''; // çºåå 185 var jstrt = array[3]; 186 if (!jstrt) jstrt = ''; // çªå° 187 188 var jaddr = jcity + jarea + jstrt; 189 if (isset(ElZip.faddr1) != '' && isset(ElZip.faddr2) != '' && isset(ElZip.faddr3) != '') { 190 // é½éåºçã»å¸åºçºæã»çºå 191 //ElZip.faddr1.value = jpref; 192 ElZip.faddr3.focus(); 193 ElZip.SetAddr1(pref_id, jpref); 194 ElZip.faddr2.value = jcity; 195 ElZip.faddr3.value = jarea + jstrt; 196 ElZip.faddr3.focus(); 197 } else if (isset(ElZip.faddr1) != '' && isset(ElZip.faddr2) != '') { 198 // é½éåºçã»å¸åºçºæï¼çºå 199 ElZip.faddr2.focus(); 200 ElZip.SetAddr1(pref_id, jpref); 201 ElZip.faddr2.value = jaddr; 202 ElZip.faddr2.focus(); 203 } else { 204 // é½éåºçï¼å¸åºçºæï¼çºå 205 ElZip.faddr1.focus(); 206 ElZip.faddr1.value = jpref + jaddr; 207 ElZip.faddr1.focus(); 208 } 209} 210 211// Safari æååãå¯¾å¿ 212ElZip.getResponseText = function (req) { 213 var text = req.responseText; 214 if (navigator.appVersion.indexOf('KHTML') > -1) { 215 var esc = escape( text ); 216 if (esc.indexOf('%u') < 0 && esc.indexOf('%') > -1) { 217 text = decodeURIComponent(esc); 218 } 219 } 220 return text; 221} 222 223// ãã©ã¼ã nameããè¦ç´ ãåãåºã 224ElZip.getElementByName = function (elem, sibling) { 225 if (typeof(elem) == 'string') { 226 var list = document.getElementsByName(elem); 227 if (!list) return null; 228 if (list.length > 1 && sibling && sibling.form) { 229 var form = sibling.form.elements; 230 for(var i=0; i<form.length; i++) { 231 if (form[i].name == elem) { 232 return form[i]; 233 } 234 } 235 } else { 236 return list[0]; 237 } 238 } 239 return elem; 240} 241 242ElZip.SetAddr1 = function (pref_id, jpref) { 243 if (ElZip.faddr1.type == 'select-one' || ElZip.faddr1.type == 'select-multiple' ) { 244 var opts = ElZip.faddr1.options; 245 for(var i=0; i<opts.length; i++) { 246 var vpref = opts[i].value; 247 var tpref = opts[i].text; 248 opts[i].selected = (vpref == pref_id || vpref == jpref || tpref == jpref); 249 } 250 } else { 251 ElZip.faddr1.value = jpref; 252 } 253} 254 255isset = function (val) { 256 if(typeof(val)!='undefined') return true; 257 return false;
vendor: 1 bytes, line 258
258}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.