表单不提交动态生成的输入(jQuery)

nya*_*nko 7 forms jquery input dynamic

您好我正在尝试为我的表单动态生成一些输入,但它不会发布生成的新输入,到目前为止我一直在搜索,我唯一能找到的是使表单成为身体标签,以及在我的应用程序的设计中,这是不可能的,所以有人可能知道会发生什么以及如何解决它?不,它不起作用.live().

HTML

 <form name="order" id="newOrder" action="../core/query.php" method="post">
        <input type="text" value="Search" id="itemSearch" class="search"/>
        <input type="hidden" id="itemAdd"/>
        <button type="button" class="boton" id="additem">Add</button> 
        <br>
        <div id="items"></div>
        <br>
        <button type="submit" class="boton" > Submit</button>
        <button type="reset" class="boton" style="float:right;"> Cancel</button>
        </div>
    </form>

Javascript

  $('#additem').click(function(){
if($('#itemAdd').val()){
    var rawr = $('<div></div>')
    .css('display','none')
    .html(  '<br><table><td>'
            +currItem.label+'</td><td> Size '
            +currItem.size+'</td><td class="right">$'+currItem.price
            +'</td></table> <input type="hidden" name="contents[]" value="'
            +currItem.value+'"/>');
    var mhm = currItem.price;
    rawr.appendTo('#items').toggle(500).click(function(){
        $(this).toggle(500,function(){
            $(this).remove();
        });
        $('#total').fadeOut("fast",function(){
            total = (parseFloat($(this).text())-parseFloat(mhm)).toFixed(2);
            $(this).text(total).fadeIn("fast");
        });
    });
    $('#total').fadeOut("fast",function(){
        total = (parseFloat($(this).text())+parseFloat(mhm)).toFixed(2);
        $(this).text(total).fadeIn("fast");
        currItem=null;
    });
   }
  });
Run Code Online (Sandbox Code Playgroud)

所以基本上我使用带有远程JSON的jQuery UI自动完成功能,当按下#addItem按钮创建一个带有一些文本的表和一个带有来自数据库的ID的隐藏输入时,所有都能正确显示,但是在提交时它们不会被发布也不会被序列化.

g19*_*tic 9

表单元素需要"名称"属性而不仅仅是"id"...或者他们的数据不会被提交.


Chr*_*rga 3

可能是时候进行一些调试了。你确定它没有被发布吗?以下 jsFiddle 使用您的确切代码,提交表单后,您可以看到在 Firebugs NET 选项卡中发布的值。

http://jsfiddle.net/s6Umg/

使用 Firebug 中的 NET 选项卡检查您的真实示例,看看这些值是否真正被传递。数据发布后,访问数据可能会出现问题。您如何访问 query.php 文件中的 POST 数据?

  • 您正在禁用输入。禁用的输入不会随表单一起提交。尝试使用只读属性来代替:) (2认同)