Javascript jQuery不允许我在.append()之后提交表单的所有输入

Javascript jQuery不允许我在.append()之后提交表单的所有输入,javascript,jquery,html,Javascript,Jquery,Html,我正在使用jQuery.append()向html表单添加大量输入。我试图使用数组提交输入,但它无法识别附加的输入字段。如果我以静态方式附加这些,它将起作用: 输入字段如下所示: <form action="http://localhost:8888/xxx/action.php" method="post" id="form"> <div class="row noMargin" id="question1">

我正在使用jQuery.append()向html表单添加大量输入。我试图使用数组提交输入,但它无法识别附加的输入字段。如果我以静态方式附加这些,它将起作用:

输入字段如下所示:

<form action="http://localhost:8888/xxx/action.php" method="post" id="form">
                        <div class="row noMargin" id="question1">
                            <div class="col-xs-12 col-sm-1 col-md-4  " id="">
                            <input type="text" class="qnaQ form-control" id="qnaQ" name="qnaQ[]">
                            </div>

                            <div class="col-xs-12 col-sm-1 col-md-2  " id="">
                                <input type="text" class="qnaOpt1 form-control" id="qnaOpt1" name="qnaA1[]">
                            </div>

                            <div class="col-xs-12 col-sm-1 col-md-2  " id="">
                                <input type="text" class="qnaOpt2 form-control" id="qnaOpt2" name="qnaA2[]">
                            </div>

                            <div class="col-xs-12 col-sm-1 col-md-2  " id="">
                                <input type="text" class="qnaOpt3 form-control" id="qnaOpt2" name="qnaA3[]">
                            </div>

                            <div class="col-xs-12 col-sm-1 col-md-2  " id="">
                                <input type="text" class="qnaOpt4 form-control" id="qnaOpt4" name="qnaA4[]">
                            </div>


                            <div class="row noMargin topPadding">
                                <div class="col-xs-12 col-sm-1 col-md-2 " id="">
                                    Correct Answer:
                                </div>
                                <div class="btn-group">
                                    <a class="btn btn-default dropdown-toggle" data-toggle="dropdown" href="#">Answer<span class="caret"></span></a>
                                    <ul class="dropdown-menu">
                                        <li><a href="#">Option1</a></li>
                                        <li><a href="#">Option2</a></li>
                                        <li><a href="#">Option3</a></li>
                                        <li><a href="#">Option4</a></li>
                                    </ul>
                                </div>
                            </div>
                        </div>

正确答案:
添加更多字段的脚本:

    <script type="text/javascript">
        $(document).ready(function() {
            var currentItem = 1;
            $('#addQna').click(function(){
                currentItem++;
                $('#items').val(currentItem);
                var strToAdd ='<div class="row noMargin topPadding" id="question1"><div class="col-xs-12 col-sm-1 col-md-4" id=""><input type="text" class="qnaQ form-control" id="qnaQ" name="qnaQ[]"></div><div class="col-xs-12 col-sm-1 col-md-2  " id=""><input type="text" class="qnaOpt1 form-control" id="qnaOpt1" name="qnaA1[]"></div><div class="col-xs-12 col-sm-1 col-md-2" id=""><input type="text" class="qnaOpt2 form-control" id="qnaOpt2" name="qnaA2[]"></div><div class="col-xs-12 col-sm-1 col-md-2" id=""><input type="text" class="qnaOpt3 form-control" id="qnaOpt3" name="qnaA3[]"></div><div class="col-xs-12 col-sm-1 col-md-2" id=""><input type="text" class="qnaOpt4 form-control" id="qnaOpt4" name="qnaA4[]"></div><div class="row noMargin topPadding"><div class="col-xs-12 col-sm-1 col-md-2" id="">Correct Answer:</div><div class="btn-group"><a class="btn btn-default dropdown-toggle" data-toggle="dropdown" href="#">Answer<span class="caret"></span></a><ul class="dropdown-menu"><li><a href="#">Option1</a></li><li><a href="#">Option2</a></li><li><a href="#">Option3</a></li><li><a href="#">Option4</a></li></ul></div></div></div>';

                $('#questions').append(strToAdd);

            });
});
</script>

$(文档).ready(函数(){
var currentItem=1;
$('#addQna')。单击(函数(){
currentItem++;
$('项目').val(当前项目);
var strToAdd='Correct Answer:
    • '; $(“#问题”).append(strToAdd); }); });
将表单提交给php的按钮:

<button type="submit" class="btn btn-default saveTraining" id="saveTraining">
        Save
    </button>

拯救

您不应该多次使用同一id。
我能理解的是,当你添加一个新问题时,文本的id和名称是相同的,因此,帖子不会识别所有的值。

尝试将
form
属性添加到
input
标记中,并使用表单id:

<input ... form="form-id">


你能给你的问题添加一个JSFIDLE吗?我想回答你的问题的信息缺失了,你的表单标签里有所有的标签吗?,div
#questions
在html中的什么位置?可能您将问题附加到
div
元素之外的
form
元素中。是的,但如果我只是复制并粘贴该块。append添加该块就可以了。所以这不是问题所在。id为questions的元素在哪里?是否附加到未定义的元素。。