努力在Spring Boot中获取多个具有相同名称的输入字段值

http://img2.mukewang.com/6229ac51000161c409910250.jpg

http://img4.mukewang.com/6229ac5c0001752a10130446.jpg

http://img.mukewang.com/6229ac6300017bd509440389.jpg

我的问题是如何从 Name="phone" 字段中获取所有值


http://img.mukewang.com/6229ac6c0001179505740157.jpg

JS


<script>

    $(function(){


        $(document.body).on('click', '.changeType' ,function(){

            $(this).closest('.phone-input').find('.type-text').text($(this).text());

            $(this).closest('.phone-input').find('.type-input').val($(this).data('type-value'));

        });


        $(document.body).on('click', '.btn-remove-phone' ,function(){

            $(this).closest('.phone-input').remove();

        });



        $('.btn-add-phone').click(function(){


            var index = $('.phone-input').length + 1;


            $('.phone-list').append(''+

                '<div class="input-group phone-input">'+

                '<input type="number" name="phone" class="form-control" placeholder="(999) 999 9999" />'+

                '<span class="input-group-btn">'+

                '<button class="btn btn-danger btn-remove-phone" type="button"><span class="glyphicon glyphicon-remove"></span></button>'+

                '</span>'+

                '</div>'

            );


        });


    });</script>

HTML


<div class="col-sm-10">


                        <div class="phone-list">


                            <div class="input-group phone-input">

                                    <span class="input-group-btn">

                                    </span>

                                <input type="number" name="phone" class="form-control" placeholder="(999) 999 9999"  required=""/>

                            </div>


                        </div>



                        <button type="button" class="btn btn-success btn-sm btn-block btn-add-phone"><span class="glyphicon glyphicon-plus"></span> Add Phone</button>

                    </div>

控制器


   @PostMapping("/applicant")

   public String saveApplicantToDb(

       @Valid @ModelAttribute Applicant applicant, 

       @RequestParam("phone") int[] phone

   ) {

        if (phone!= null)

        System.out.println(phone.length);


        _applicantRepository.save(applicant);


        return "applicant";

    }


慕姐4208626
浏览 297回答 2
2回答

温温酱

您正在使用具有相同名称“电话”的多个输入数字字段,这是正确的,这没有问题,它应该反映在输入@Param(“电话”)中,但您必须确保电话输入必须是例如整数类型的占位符是完全不正确的 (999) 999 9999。新添加的电话也不是整数。所以确保它们是整数

蛊毒传说

问题是名称应该与您的模型属性匹配但是我期待从视图中显示 int[] 类型的数组,但它向我发送 String[] 类型的数组问题已解决,并确保您的 JS 代码正确填充您的输入字段 [尤其是名称='field_name'] 应该与模型的属性匹配。在浏览器上检查您的 -> 检查并折叠 div 并查看输入字段名称
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java