open() 方法用于打开一个新的浏览器窗口或查找一个已命名的窗口

window.open(URL,name,specs,replace)

URL 可选。打开指定的页面的URL。如果没有指定URL,打开一个新的空白窗口name   可选。指定target属性或窗口的名称specs  可选。一个逗号分隔的项目列表  设置新的窗口得长,高,和位置等replace    Optional.Specifies规定了装载到窗口的 URL 是在窗口的浏览历史中创建一个新条目,还是替换浏览历史中的当前条目。支持下面的值:        true - URL 替换浏览历史中的当前条目。        false - URL 在浏览历史中创建新的条目。

1.在页面上,点击打开新窗口时,则打开指定得窗口

<h1>window open 应用</h1>
<button οnclick="f()">打开新窗口</button>
<script>function f() {window.open("https://www.cnblogs.com/","","width=600,height=300,top=100")}
</script>

2.点击后,页面跳转到添加页面,提交后,窗口关闭

在打开得新窗口中添加完数据后,窗口关闭,应该在另建一个新的页面,在该页面上写上使窗口关闭得代码,让页面跳转到该页面
def add(request):if request.method=='POST':title=request.POST.get("title")price = request.POST.get("price")models.Food.objects.create(price=price,title=title)return render(request,"pop.html")return render(request,"add.html")
pop.html
<script>window.close()
</script>

3.点击后,页面跳转到添加页面,提交后,窗口关闭,添加的数据显示到页面上

1.点击添加按钮时,为了将数据再返还给此页面,应该识别是哪个按钮进行的提交操作,因此对每个按钮添加个类作识别2.在给window open传递地址时,将这个类值作为参数传递过去,这个后端在处理完数据后,也能知道返还给谁3.后端处理完,要跳转到关闭窗口的页面,将传递的数据传到这个页面,这个页面再将数据给显示页面。用window.opener接收4.再显示页面找到对应的标签,将值赋给该标签
add.html
<form action="" method="post">{% csrf_token %}<p><label for="title">食物名称</label><input type="text" id="title" name="title"></p><p><label for="price">食物价格</label><input type="text" id="price" name="price"></p><p><input type="submit" value="提交"></p>
</form>

index.html
<h1>window open 应用</h1>
<button οnclick="f(this)" class="show1">添加数据1</button>
<p id="show1"></p>
<hr>
<button οnclick="f(this)" class="show2">添加数据2</button>
<p id="show2"></p>
<script>function f(self) {为路径添加参数,self.className获得该标签类的值url="/add/?pop="+self.className;window.open(url,"","width=600,height=300,top=100")};function bar(arg,pop){var ele=document.getElementById(pop);ele.innerText=arg;}
</script>

pop.html 关闭窗口页面
<script>window.opener.bar("{{ food.title }}","{{ pop }}");window.close()
</script>
def index(request):return render(request,"index.html")
def add(request):if request.method=='POST':title=request.POST.get("title")price = request.POST.get("price")##只要路径上有参数,POST请求中也可以使用GETpop=request.GET.get("pop")food=models.Food.objects.create(price=price,title=title)return render(request,"pop.html",{"food":food,"pop":pop})return render(request,"add.html")

转载于:https://www.cnblogs.com/zgf-666/p/9175323.html

Window open()使用方法相关推荐

  1. javascript window 属性和方法。

    closed 获取引用窗口是否已关闭. defaultStatus 设置或获取要在窗口底部的状态栏上显示的缺省信息. dialogArguments 设置或获取传递给模式对话框窗口的变量或变量数组. ...

  2. java window的对象方法,[Java教程]如何真正重写window对象的方法_星空网

    如何真正重写window对象的方法 2014-12-29 0 重写window对象的方法不是一件新奇的事,比如我们可能需要改变默认alert的行为,如何安全的重写呢? 小菜看到某知名IT网站是这样的写 ...

  3. window.open使用方法

    window.open使用方法 open方法用来可以查找一个已经存在或者新建的浏览窗口: 1.语法: window.open([url],[窗口名称],[参数字符串]): 解释: **url:**可选 ...

  4. 检测数据类型、小数点后保留后N位方法、数据类型转换、window对象的方法 、分支结构 (if单分支、if-else 双分支、多重if结构)isNaN() 与 Number.isN的区别

    目录 1.检测数据类型(typeof) 2.数据类型转换 转换为字符串类型 换为数字类型 其他类型转换为布尔值 小数点后保留后N位方法 3.window对象的方法 (window.可省略) 4.顺序流 ...

  5. Html dom window 对象 open()方法

    open() 方法用于打开一个新的浏览器窗口或查找一个已命名的窗口. 语法: window.open(URL,name,features,replace) 参数 描述 URL 一个可选的字符串,声明了 ...

  6. BOM:window对象的方法之定时器setTimeout()和停止setTimeout()定时器

    window对象提供了两个好用的方法:定时器,分别是: - setTimeout() - setInterval() window.setTimeout(调用函数,[延迟的毫秒数]); 毫秒数如果不写 ...

  7. jquery中的ready方法和window的onload方法的区别

    jquery中的ready方法和window.onload的区别 区别 jquery的ready方法在网页中的DOM结构加载完成后执行.window.onload()必须等到网页全部加载完毕(包括图片 ...

  8. window的onload方法不执行?

    今天在开发的时候,发现很多页面的信息都没有显示出来,仔细观察了之后,发现都是onload的js函数没有执行的原因. 发现最近Google的统计代码加载很慢,经常在浏览器状态栏里看到Google的统计代 ...

  9. window对象的方法

    使用window方法时可以省略window open方法 语法格式:window.open(URL,窗口名称,窗口风格) 功能:打开一个新的窗口,并在窗口中装载指定URL地址的网页. 说明: open ...

最新文章

  1. iOS scrollToItemAtIndexPath 无效的解决方案
  2. CF703D Mishka and Interesting sum(求区间出现次数偶数次数的异或和)
  3. 光纤布拉格光栅matlab,matlab对各种光纤光栅的仿真
  4. 【Python】【Flask】
  5. 51nod 1073约瑟夫环
  6. 数据科学和人工智能技术笔记 三、数据预处理
  7. cpu超频软件_Easy OC,装机小白进阶大神的好用软件
  8. 随手记_unbuntu从命令行进入图形界面
  9. Spanning-Tree Portfast
  10. 【笔记】代码整洁之道
  11. 图片转文字软件哪个好?推荐这几款良心软件
  12. python处理图片像素_Python 处理图片像素点的实例
  13. 钽电容技术参数及封装
  14. 一个码稿人自述:什么样的文档产品适合我?|深度吐槽
  15. Python Spider入门
  16. 大数据应用对企业税务风险管理影响
  17. 张正友畸变矫正C++代码
  18. Android app后台运行休眠仍然可以运行的方法(确保一直运行)
  19. python做动态表情包下载_用 Python 开发一个【GIF表情包制作神器】
  20. jlink怎么调试linux程序_【转】ubuntu linux下openocd + gdb-insight 用Jlink调试arm程序

热门文章

  1. 小程序上传图本地片wx.chooseImage
  2. OpenCV:Adaboost训练时数据扩增
  3. oracle 怎么拼,ORACLE 简化拼接
  4. mysql存储过程和自定义函数
  5. java中Date,SimpleDateFormat
  6. Redis保存Java Session
  7. mysql表去掉回车、换行
  8. 3.集--LinkedTransferQueue得知
  9. html5 audio音频播放全解析
  10. iOS开发系列文章(持续更新……)