博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
django建立管理系统之五----单页ajax数据交互
阅读量:6917 次
发布时间:2019-06-27

本文共 3541 字,大约阅读时间需要 11 分钟。

ajax数据提交:

需求:

1. 点击ajax方式提交后数据提交到后台数据库,并且在前台实现数据更新

a.可以用刷新页面来实现数据页面的更新

对应的html,实现局部刷新(可以用刷新页面实现,例如

$(function(){

     
refresh();
});
//点击按钮调用的方法
function 
refresh(){
    
window.location.reload();
//刷新当前页面.
}

b.也可以使用js网页拼凑方法来实现页面局部刷新

model页面如下:

model html:

table:

table html:

{% for item in cls_list %}              {
{ item.id }} {
{ item.caption }} 编辑| 跳转编辑 | 删除 {% endfor %}

-------------------

js开始拼凑:

要拼凑的格式: /*      {
{ item.id }} {
{ item.caption }} 编辑 | 删除
  */ 开始拼凑:
function bindSubmitModal() {
$('#modal_ajax_submit').click(function () {
var nid = $('.modal input[name="id"]').val(); var value = $('.modal input[name="caption"]').val(); $.ajax({
url: SUBMIT_URL, type: 'POST', data: {caption: value,id: nid}, dataType: "JSON", success: function (rep) {
//data = JSON.parse(data); if(!rep.status){
alert(rep.error); }else{
// location.reload(); // 通过js在table表格最后追加一行数据,追加的数据就是当前增加的数据 /* {
{ item.id }} {
{ item.caption }} 编辑 | 删除
                                          */                     var tr = document.createElement('tr');                     var td1 = document.createElement('td');                     // td1ID                     td1.innerHTML = rep.data.id;                     var td2 = document.createElement('td');                     // td2标题                     td2.innerHTML = rep.data.caption;                     var td3 = document.createElement('td');                     td3.innerText = "|";                     var a1 = document.createElement('a');                     a1.innerHTML = "编辑";             a1.className = "td-edit"
var a2 = document.createElement('a');                     a2.className = "td-delete";                     a2.innerHTML = "删除";                     $(td3).prepend(a1);                     $(td3).append(a2);                     $(tr).append(td1);                     $(tr).append(td2);                     $(tr).append(td3);                     $('table tbody').append(tr);                     $('.modal,.shade').addClass('hide');                 }             }         })     }) } --------------------------------事件委托------------------------ -----新创建的元素没有绑定js,因为js早已经载入完毕,这是可以通过事件委托给他绑定:
function  bindTdEditEvent() {
/* $('td .td-delete').click(function () {
$('.remove,.shade').removeClass('hide'); }) */ $('tbody').on('click', '.td-edit', function () {
$('.model,.shadow').removeClass('hide'); SUBMIT_URL = "/up_classes.html"; /* var tds = $(this).parent().prevAll(); $('.modal input[name="caption"]').val(tds[0].innerText); $('.modal input[name="id"]').val(tds[1].innerText); */ $(this).parent().prevAll().each(function () {
var text = $(this).text(); var name = $(this).attr('alex'); $('.model input[name="' + name +'"]').val(text); }) }) } ---------------------------------------------------- 分页实现(自定义,非插件) ---------------------------------------------------

转载于:https://www.cnblogs.com/yegang9526/p/8663715.html

你可能感兴趣的文章
linux磁盘管理
查看>>
pb 循环遍历文件
查看>>
win7下设置计划任务
查看>>
vpp的feature
查看>>
Shell脚本循环语句——for循环
查看>>
linux课后扩展
查看>>
6.python之time模块
查看>>
最近很累,但是精神上更累
查看>>
Java变量和对象的作用域
查看>>
JS设计模式之单体模式(Singleton)
查看>>
does not contain bitcode. You must rebuild it with
查看>>
【java虚拟机系列】java虚拟机系列之JVM总述
查看>>
5G应用价值在哪里?
查看>>
Foundation框架 ---- 结构体
查看>>
安装OpenStack计算服务(nova)
查看>>
安装browser-sync
查看>>
CDays–4 习题五及相关内容解析。
查看>>
Logcat中报内存泄漏MemoryLeak的一次分析
查看>>
ORA-01658: 无法为表空间COREV6中的段创建INITIAL区
查看>>
C# PicBox 背景透明
查看>>