- 模板语言可以有if、for等。模板语句在{% %}中。
- form表单提交,页面会刷新。
- Ajax提交,页面不刷新。跳转需要手动JavaScript实现。location.href
- 数据输入的两种方式。一是Ajax,适合数据比较少的情况;二是新的URL页面,适合数据比较多的情况。
- Django项目的步骤
- django-admin startproject mysite
- 配置。包含模板、静态文件、crsf。
- 路由关系。URL对应到函数。从上到下进行匹配。
- 视图函数。def index(request):
- request.method
- request.GET
- request.POST
- return redirect('url')
- return render(request,模板路径,数据字典)。获取模板加上数据,然后进行渲染,再返回给HttpResponse。
- return HttpResponse()
- 模板渲染。{{ k1 }} {{ k1.0 }} {% for i in result %} {{ i }} {% endfor %}
- {{ if 1>2 %}
- {{ else }}
- {{ endif }}
- 模态对话框
- <a onclick="modelEdit();">对话框编辑</a>
- <a href="http://www.baidu.com" onclick="modelEdit();">对话框编辑</a>。注意这时是跳转还是执行函数。通过测试发现,先执行函数,然后进行跳转。
- <a href="http://www.baidu.com" onclick="return modelEdit();">对话框编辑</a>。然后在modelEdit()函数中return false,这时后续的跳转不再执行。如果要执行,那么return true。
- 以上就是js阻止默认时间的发生的方法。
-
<a onclick="return modelEdit(this);">编辑</a> function modelEdit(ths){ /*显示对话框*/ document.getElementById('shadow').classList.remove('hide'); document.getElementById('editmodal').classList.remove('hide'); /*获取当前标签,然后获取当前标签的父标签,再找其上方标签获取id*/ var v = $.(ths).parent().prevAll(); /*获取父标签之前的所有同级标签,但是顺序是从后向前*/ console.log(v);/*在Chrome的console标签可以得到和查看*/ /*找到相应的项,赋值到编辑对话框中*/ $('#editTitle').val($(v[0]).text); } <input id='editid' type="text" name="id" style="display:none" /> 然后可以采用上面的方式进行赋值,将id值保存下来。 $('#editid').val($(v[1]).text); 提交按钮的写法: <input type="button" value="提交" onclick="editAjaxSend();" /> function editAjaxSend(){ var nid=$('#editid').val(); 为啥这里需要#? var content = $('#editTitle').val(); console.log(nid,content); 在Chrome的console标签可以得到和查看 然后发送request,注意js发送Ajax请求的方法如下 $.ajax({ url:'/modal_edit_class', type:'POST', data:{'nid':nid,'content':content} success:function(arg){ console.log(arg); } }) 然后编辑urls文件,增加处理请求的处理网址和函数: url(r'^modal_edit_class'),views.modal_edit_class), 然后编写处理函数: def modal_edit_class(request): ret = {'status':True,'message':None} try: nid = requet.POST.get('nid') content = reuqest.POST.get('content') sqlheper.modify('update set title = %s where id = %s',[content,nid,]) except Exception as e: ret['status'] = False ret['message'] = str(e) import json return HttpResponse(json.dumps(ret)) #json帮助把dict转换为string
-
js中字符串和json对象的相互转换:
JSON.parse(string) 把字符串转换为对象
JSON.stringify(object) 把对象转换成字符串arg = JSON.parse(arg); if(arg.status){ location.reload(); //刷新当前页面 } else { alert(arg.message); }
-
continue
浙公网安备 33010602011771号