Javascript把数据从一个页面的层传递到另一个页面层里面

时间:2022-01-04 15:20:17

背景:昨天头脑发热投了某一家国企的计算机类岗位(说是有前端岗位),通过找同学内推,虽然也笔试了一大堆题目(行测题,计算机网络,http协议,英译汉,古诗文默写,自己把品质排序并且进行200字以上的阐述等)并且有幸通过了笔试(可能是我同学是实习hr的关系)。

先在等候室等了大概俩小时,终于等到我们组进入了面试室,因为自己是自己组的最后一位,所以可以听到前面同学的面试问题(比如说:怎么将css导入到html文件中?怎么在html文件中导入js文件等诸如此类的问题,剩下的就是数据库方面的问题下面再聊)我一听,这么简单,但是前面的人回答的好像都不太理想,恨不得自己马上上去把这些问题都给回答了,大概经历了又半个小时的等待,终于等到我了,先是进行了1分钟的自我介绍之后,并且明确了自己比较擅长的是web前端方向,其他技术由于是计算机缘故的问题,也是略有涉猎,然后上来直接第一个问题就是 :你用js做过什么?(我就说了一些实现的网页特效的插件什么的(图片轮转、二级导航菜单、js更改网页的样式实现网页皮肤更改、计时器、抽奖器、通过js中的Dom API实现获取文本框数据并用正则进行验证等一系列小玩意)),

然后就是本文要说的主题了(如何用js把一个页面的数据传输到另一个页面)我首先想了一下自己之前传输数据时都是用Ajax+Json传输数据到服务器,然后通过服务器传送到另一个页面上,并且提出了(两个页面是否在同一域名下,是否让我用跨域实现),然后面试官一脸蒙B的看着我问我跨什么?然后我一看情况好像不太对,好像面试官不是主要做前端方向的(就像事先背好了题和答案的那种感觉),然后我就说了一大堆原生js实现ajax传输数据的内容(包括先定义js先定义XMLHttprequest对象,open,send,把要传输数据写成Json类型,用send传输过去,并且用onreadystatechange进行是否传输成功,并且可以跟后台先做好传输时的约定)然后就感觉自己都佩服自己了,谁知道面试官直接来了一句我就让你使用js实现(我的心顿时凉了一半,我用js都把Ajax实现了,并且没有像之前自己做时用jQuery库)只好说自己实现不了,然后就被一个专门做数据库(为什么知道他是做数据库的呢,后面再说)的给鄙视了。剩下了一部分就是回答一些简单的问题了(比如说,你最喜欢的学科,考的最好的学科)我就进行了回答并且阐述了原因,然后就被他在成绩单上瞅见我学oracle数据库了,然后有开始了数据库的更多的轰炸了。

福利:来顺便学习一下oracle方面的知识

你oracle数据库怎么样?(答:不太擅长。)不是你专业课吗?(答:我两年前学的。)安装过oracle库吗?(答:安装过。)怎么安装的?默认安装还是自定义?(仔细想了一下答:两年前按的,好像是oracle 11g 我也记不太清了,只是点下一步,和选择安装目录,设置用户权限。)数据库有哪五个模块?(想了一下,只知道设置远程连接哪一个,就答了:不知道。)默认生成的两个用户?(答:一个system,一个是一个外国人的名字,当时确实想不起来了,后来看书才知道是scott。)如何建一个表?(答:用creat table 表名。 )之前要做什么工作?(当时想了很久才想到了,要先获的dba权限,当时说的是用system用grant命令将建表的权限给自己登陆的用户)。数据库表数据类型?(答:varchar,varchar2,number,blob等)之后就问varchar2可以存多少字节数据(答:48个字节,后来才知道是4000个字节。)

然后说今天就到这吧,就结束了,感觉自己面试了假的web前端方向,面了一场数据库工程师。

走出来之后心情很不好,反思自己,终于找到了面试官真正”想要的“那道题的答案(划重点了):

假设有a.html和b.html两个文件:

通过url传参

1> 把a.html中的数据传入到b.html文件层中

  <div id = "s"></div>
<script>
window.location.href = "a.html?id=100";
document.getElementById("s").innerHTML = window.location.split('?')[1];
<script>

2>用Ajax在b.html页面传参到b页面,并且在b.html页面的层显示a.html页面执行参数

1.

<div id = "a"> </div>
$("a").load("a.html?id=100");

2.

$.get("a.htm?id=100",function(data){
$.("#a").html(data);
});

前端入坑新手,技术差,如有错误,请指正。

ps:写博客时突然收到了二面通知。。。。