用JS动态构造GET请求之谜(ajax跨域的另类解法)

有的时候,会有这样一种情况,当我们需要收集一些用户的页面数据或者浏览器、屏幕分辨率等时,而且这些数据是尽可能的真实的,如果让用户填写一个表单来提交,这有很多人是不愿意去做的,除非你正在举行一个抽奖,他们大概才会乐此不疲,数据亦缺乏准确性,解决方法是使用JS,对!使用Javascript脚本就能轻松的取得我们需要的数据,但怎么提交到服务器就成了一个问题,使用AJAX确实是一个优越而又可行的办法,可是,有的时候我们不用表现的如此优雅,直接使用JS动态构造一个GET请求,不由分说的提交到服务器,问题也就解决了,这过程中同样不需要用户的介入,OK,看看我的一点拙劣的做法吧。 众所周知的一件事情是:使用script标签,能在页面中新开一个通信连接(当然你可以说iframe,object标签也可以),如果我们将script 标签的src指向一个php文件,那么它就可以向服务器提交数据了。动态创建script标签的方法有两种,其实实质上是一样的。 这里我先创建了一个js文件,供后面将动态创建的元素的src直接指向该文件s.js内容很简单: 1. if(v !=''){ 2. alert(v); 3. } 4. else{ 5. alert('生活于三山两水间,无比惬意释然。'); 6. } 1、使用createElement动态创建script元素 1. <script type="text/javascript"> 2. var v=''; 3. try{ 4. v='7777'; 5. var script_el=document.createElement("script"); 6. script_el.type="text/javascript"; 7. script_el.src="s.js?"+Math.random(); 8. h=document.getElementsByTagName("head")[0]; 9. h.appendChild(script_el); 10. } 11. catch(e){ 12. alert(e); 13. } 14. v='改哈子看看有嘛效果'; 15. </script> 2、使用document.write直接写入 1. <script type="text/javascript"> 2. var v='其实这个例子举得非常失败,我。。。'; 3. document.write('
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值