javascript - 动态 Javascript 表单输入未发布
问题描述
我正在使用 python-flask 框架开发一个 Web 应用程序。
我遇到的一个问题是用户可以创建新输入字段的表单。表单出现在 HTML 代码中,并在浏览器中直观地出现,但是动态创建的元素不会出现在 POST 请求中。
下面是两个 javascript 函数,第一个在用户按下相应按钮时创建表单元素。我在网上找到的第二个代码,因为它说序列化会将动态表单元素添加到 POST 请求中。
$(function create_new_row_plus_button_fn() {
$("#addRows").click(function () {
counter = counter + "a";
var trelem = document.createElement('tr');
var tdelem = document.createElement('td');
trelem.appendChild(tdelem);
var frm = document.getElementById("new_table_id");
var newEl = document.createElement("input");
newEl.name = counter;
newEl.type = "text";
tdelem.appendChild(newEl);
frm.appendChild(trelem);
});
})
$('#form_container').on('submit', function(e) {
//prevent the default submithandling
e.preventDefault();
//send the data of 'this' (the matched form) to yourURL
$.post('/add_new_product', $(this).serialize());
location.reload();
});
我注意到的一件事是,如果我从 chrome 调试器查看 html,动态表单元素是可见的,但如果我查看页面源代码,则它们不是。
解决方案
问题发生在 . 移动外部解决了这个问题。
推荐阅读
- python - ipickle.dump(gmm,open(dest + picklefile,'x')) ,FileNotFoundError: [Errno 2] 没有这样的文件或目录:
- flutter - 如何在 Flutter 中使 StatusBar 对 Android 透明
- r - 理解 R 中的 margins-package:两个不同的显着性水平(边际效应)
- python - 熊猫自定义功能
- docker - traefik 自定义服务创建
- cypher - 更改 RedisGraph 关系中的节点引用
- java - “RelOptCostImpl$Factory 无法转换为 FlinkCostFactory”导致 Flink-SQL JOIN 查询失败
- postgresql - PG_CRON 中的全真空多表
- django - Django 模型中的函数
- javascript - Quasar Table Editing with body slot