Перечень обязательных объектов, заполненных от javascript, весной mvc - PullRequest
0 голосов
/ 16 апреля 2020

Мне нужно заполнить коды (тип List) атрибута модели paymentForm из массива javascript и отправить их в контроллер. У меня есть список данных, и у каждой информации есть два редактируемых ввода. Я получил значения каждой строки ввода, используя JQuery и передать их, чтобы сформировать атрибут скрытого пути. Кажется, я должен преобразовать массив javascript в список java, и я не достаточно ясен, чтобы найти решение. После запуска приведенного ниже кода, коды становятся нулевыми.

PaymentController. java

    @RequestMapping(value = "/choose", method = RequestMethod.POST)
    public String choose(@ModelAttribute final PaymentForm paymentForm,final Model model)
    {

        //i can get other property values of PaymentForm but can not get values of List type property
                  ???

    }

PaymentForm.tag

<form:form id="selectPaymentForm" modelAttribute="paymentForm" action="${request.contextPath}/payment/choose" method="post">

    <form:hidden path="codes[]" id="codes" value=""/>


     <formElement:formInputBox idKey="someValue" labelKey="someValue" path="someValue" inputCSS="text" />

     <button id="choosePayment_continue_button" type="submit" class="btn btn-primary btn-block ">
    </button>

</form:form>

оплата. js

  $(document).on("click","#choosePayment_continue_button",function(e){
            e.preventDefault();

           var codes=[];
            $('#codeValues input').each(function () {
                 codes.push({ 
                        "uniqueIdentifier": $(this).find("#uniqueIdentifier").val(),
                        "first": $(this).find("#firstValue").val(),
                        "second": $(this).find("#secondValue").val()
                    });
            });
            $("#selectPaymentForm #codes").val(codes);
            $('#selectPaymentForm').submit();
        })
    },

listProducts.tag

  <c:forEach items="${items.entries}" var="entry" varStatus="loop">

                              <div class="form-group" id="codeValues">

                            <input type="hidden" id="uniqueIdentifier" value="${entry.product.id}">
                            <input type="text" id="firstValue" placeholder="First"/>
                            <input type="text" id="secondValue" placeholder="Second"/>
                        </div>
                    <div> 
    </c:forEach>

PaymentForm. java

public class PaymentTypeForm
{

 private List<Code> codes;

//get and set
}

Код. java

Code.java
{

private String uniqueIdentifier;
private String first;
private String second;

//get and set

}   
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...