python生成html表格、tr增加内容_Django前端HTML通过JS实现表格可编辑,动态添加行,回车完成新建文件夹...

本文介绍了如何使用Python Django结合HTML和JavaScript实现表格动态编辑及新建文件夹功能。用户点击新建按钮后,表格末尾会添加新行,单元格变为可编辑状态。输入内容后,失去焦点时保存输入,按下回车键通过AJAX提交到后台,利用Django的`create_dir`视图创建文件夹。JavaScript部分主要负责编辑状态切换、新增行、回车事件处理以及AJAX请求。
摘要由CSDN通过智能技术生成

功能描述:

点击“新建文件夹”按钮,在table的末尾增加一行;单击页面的新增行,使单元格td变成可编辑状态;输入内容后,当单元格失去焦点时,保存输入的内容;回车后通过AJAX提交后台完成新建文件夹。

HTML部分代码,id="table2"和EditType="TextBox"后面需要用到。

新建文件夹

file4_24.ico    {% if fileinfo.search_flag == 0 %} {{ fileinfo.file_name }} {% else %} {{ fileinfo.file_path }} {% endif %}

样式表格td部分,新增行改一下:

{% block style %} {% endblock %}

JS部分,也是最关键的一部分:

JS部分根据自己的需求优化了一下:

1.EditTables()设置多个表格不要了,我只需要编辑新增行就行了。而且innerHTML会被看到td中代码。

2.tabProduct获取自己table的id。

3.新增按钮οnclick="AddRow($('#table2')[0],1)",参数为自己表对象,注意[0]。AddRow中可以改新增行默认内容,我的为“新建文件夹”。

4.SetRowCanEdit()函数中增加如下代码,使新增行后直接处于可编辑状态,也可以单击进入编辑状态。

EditCell(row.cells[j]);

5.CreateTextBox()中获取用户输入的值,AJAX提交后台:

textBox.onkeypress = function(event){ if (event.keyCode == "13"){ $.ajax({ url:"/create_dir?dir_name="+this.value, type:"GET", data:'', // processData:false, contentType:false, success:function (data) { // alert("创建文件夹完成!"); history.go(0); } }); } }

6.python实现新建文件夹:

def create_dir(request): if request.method == 'GET': dir_name = request.GET.get('dir_name') print('create_dir:'+dir_name) path = os.path.join(current_path,dir_name) while os.path.exists(path): path += '-副本' os.makedirs(r'%s'%path) return HttpResponse(path) else: return HttpResponse("error")

7.最后,效果如下:

fb99efd84fb7fb821f5b5c0408b88015.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值