怎么用js实现把数据存储到本地?

JavaScript011

怎么用js实现把数据存储到本地?,第1张

js只是一种编程语言,要看使用环境的:1、浏览器环境,比如我们看网页,看手机都是浏览器环境,这个环境下基本上用的是cookie,cookie是一种缓存技术,如果浏览器清空cookie,那么你存的东西就没了。如果用cooki,建议使用jquery的cookie插件,封装得很完整,直接拿来没问题的。另外,还可以Blob对象创建一个下载目标,这样用户可以把数据存到本地的一个文件里。但是不能自动完成,需要用户点击确定一个下载的位置。关于Blob使用方法,你自己百度一下吧。2、nodejs环境,nodejs主要是服务器,nodejs支持本地存储的。但是需要权限,如果你的服务器的存储权限不开放,也会出错。3、html5的新功能。sessionStorage,localStorage,openDatabase了解一下。这是新出来的技术,不一定所有的环境都支持,需要看浏览器的。

贴段我自己的代码给你,不太清楚你想说啥,也不知道你用的什么技术,这个是ajax技术,几乎适用于所有的技术

它可以将文本框的值传入到另一个页面,在另一个页面调用数据库,生成一个文本框的代码,输出,有本段代码获取,显示到界面

index.aspx

<input id="sta_id" name="sta_id" type="text" onchange=" Tabmenu(this.value)"/>

<div id="stationdiv">请先选择车间!<input id="sta_id" name="sta_id" type="text" /></div>

<script type="text/javascript">

var xmlhttp

function createxmlhttp()

{

var xmlhttp=null

try{

xmlhttp=new XMLHttpRequest()

}

catch(e){

xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")

}

return(xmlhttp)

}

function Tabmenu(role_id)

{

xmlhttp = createxmlhttp()

xmlhttp.open("POST",("dropstation.aspx?id="+role_id),true)//这里的第一个参数就是那另一个页面

xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")

xmlhttp.onreadystatechange=change

xmlhttp.send(null)

}

function change()

{

if(xmlhttp.readyState==4)//判断对象状态

{

if(xmlhttp.status==200)//信息成功返回,开始处理信息

{

var power = document.getElementById("stationdiv")

power.innerHTML=xmlhttp.responseText//xmlhttp.responseText这个能够获取从另一个页面输出的内容

}

}

}

</script>

dropstation.aspx页面的后台代码如下,前台什么都不用写

int id=Request.QueryString("id")

string str

............(读取数据库省略,生成字符串省略)

Response.Write(str)

Response.End()

好了,这样就可以了,这里的str会被xmlhttp.responseText获取,并输出到页面上,能够执行dropstation.aspx页面的代码,而且保证页面不会跳转到dropstation.aspx页面

常规的JS没办法全局保存数据

原因是:域名都不一样,跨域了,JS安全限制

解决办法:通过JS把数据传到服务器后端,保存到数据库

不同域名随时连接后端数据库返回的数据同步