繁体   English   中英

动态Javascript表单输入不发布

[英]Dynamic Javascript form input not POSTing

我正在使用python-flask框架开发Web应用程序。

我遇到的麻烦是用户可以在其中创建新输入字段的表单上。 表单以HTML代码形式出现,并以可视方式出现在浏览器中,但是动态创建的元素不会出现在POST请求中。

以下是两个javascript函数,第一个在用户按下相应按钮时创建form元素。 我在网上找到的第二个代码,因为它说序列化会将动态表单元素添加到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,则动态表单元素是可见的,但是如果查看页面源,则看不到它们。

问题发生在元素内部。 将外部移动解决了该问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM