popup(弹出界面)
1. 立即执行函数是什么?也就是匿名函数
立即执行函数就是
- 声明一个匿名函数
- 马上调用这个匿名函数
2、popup的举例
点击,弹出一个新的窗口。保存完事,页面不刷新数据就返回了。(点击admin的+,弹出的框就是用popup来做的)
具体操作步骤:
1、urls.py
urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^index/', views.index), url(r'^pop/', views.pop), ]
2、views.py
def index(request): return render(request,"index.html") def pop(request): if request.method=="GET": return render(request,"pop.html") else: user = request.POST.get("user") print(user) return render(request,"pop_response.html",{"user":user})
3、templaates
index.html
<body> <h1 id = "a">无所谓</h1> <a href="#" onclick=popUp("http://www.baidu.com")>点我点我</a> <script> function xxxpopupCallback(text) { document.getElementById('a').innerHTML = text; //找到标签吧值替换成用户传进来的值 } function popUp(url) { window.open( '/pop/', "n1","status=1, height:500, width:600, toolbar=0, resizeable=0"); {# window.open( url, "n1","status=1, height:500, width:600, toolbar=0, resizeable=0");#} }
分析:
index页面的第一个参数就是url,写什么路径就看到什么页面
n1:弹出窗口的名字,定死了就弹出一个
'/pop/','/pop/' 一个url弹出一个
如果有两个+最多弹出两个框
</script> </body>
pop.html
<body> <form action="" method="post"> {% csrf_token %} <input type="text" name="user"> <input type="submit" value="提交"> </form> </body>
pop_response.html
<h1>正在关闭</h1> <script> (function () { // 可以调用popup原页面的一个函数, opener.xxxpopupCallback("{{ user }}"); xxxpopupCallback是自定义的函数 window.close(); //传完数据之后自动关闭 })() </script>
注: This page is from https://www.cnblogs.com/xiaohema/p/8455548.html