我有一个可编辑的动态生成的表。单击表格中的任何单元格时,我可以更改其文本。
在一列中显示了一幅图像。当用户单击它时,我将该列的 html 更改为<input type='file'>
并触发单击,从而使用户选择要上传的文件作为图标。
在表格的最后一列中,我有一个提交按钮。如果用户进行了一些更改并按下提交,我必须拿起整行(一些文本字段和一个文件字段)并将所有内容添加到表单中,包括用户选择的文件并将其发送到 python 脚本以上传它到 s3 服务器。
我的问题是:如何发送此表格?
我目前正在使用这个脚本,但它不起作用,因为它只发送文本,request.Files
结果在 python(django) 脚本端是空的。
function update(a) {
try {
var button = $(a);
var row = $(button.parent());
var rowcount = button.parent().parent().parent().children().index(button.parent().parent());
var filerow = '';
var formrow = new Array();
var rowkey = new Array('Topic', 'TopicDescription');
var cnt = 0;
var form = $('#dyno_form');
row.siblings().each(function () {
if ($(this).find($('input:file')).length > 0) {
$(this).find($('input:file')).appendTo($(form));
} else if ($(this).find($('img')).length == 0) {
formrow[cnt++] = '<input type="text" value="' + $(this).html() + '" name="' + rowkey[cnt - 1] + '"/>';
}
});
$(form).append(formrow[0]);
$(form).append(formrow[1]);
$(form).submit();
} catch (a) {
alert(a);
}
}
这是HTML:
<form id='dyno_form' action='' method="post" style="visibility:hidden">{% csrf_token %}</form>
我该怎么做呢?