记录以前学习的点点滴滴
有时候客户的要求十分的变态,本来一个ie自带的保存历史输入信息的功能,因为我们的平台没有这个功能(至今不知道原因),所有需要写。
过程:
先引入:
<script type="text/javascript" src="autocomplete.js">autocomplete.js网络上有可以下载或看另外的日志
再确保能将数据保存的cookie中
var date=new Array(); var Cookies = { init: function () { var allCookies = document.cookie.split('; '); for (var i=0;i<allCookies.length;i++) { var cookiePair = allCookies[i].split('='); this[cookiePair[0]] = unescape(cookiePair[1]); if(cookiePair[0]!="JSESSIONID"){ date[i-1]=cookiePair[1]; } } }, create: function (name,value,days) { if (days) { var date = new Date(); date.setTime(date.getTime()+(days*24*60*60*1000)); var expires = "; expires="+date.toGMTString(); } else var expires = ""; document.cookie = name+"="+escape(value)+expires+"; path=/"; this[name] = escape(value); }, erase: function (name) { this.create(name,'',-1); this[name] = undefined; } }; Cookies.init();
再然后在提交form时判断cookie中是否已经保存了以前输入的这个输入框的值
<input type="button" value="确定" onClick="storeCookie()"/>
js文件:
function storeCookie() { var shifuyou; if(document.getElementById('p_username').value != '') { if(date!=''){ for(var i=0;i<date.length;i++){ if(document.getElementById('p_username').value == date[i]){ shifuyou='you'; break; }else{ shifuyou='meiyou'; } } }else{ shifuyou='meiyou'; } if(shifuyou=='meiyou'){ Cookies.create('<%=Math.random()*100000+1%>', document.getElementById('p_username').value);}}}
最后注意加载页面时
if(date!=''){ AutoComplete_Create('p_username', date.sort()); }
结尾:
效果图: