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

时间:2015-08-17 21:18:06

标签: javascript jquery html

我使用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>

将表单提交给php的按钮:

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

2 个答案:

答案 0 :(得分:2)

尝试将form属性添加到input标记,其格式为:

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

答案 1 :(得分:0)

您不应多次使用相同的ID。 我在那里可以理解的是,当你附加一个新问题时,文本的ID和名称是相同的,这样,帖子就不会识别所有的值。