Запретить отправку формы, но сохранить валидацию формы с помощью клиентаidevalidations - PullRequest
0 голосов
/ 08 апреля 2019

У меня есть сценарий модели, который в своем представлении редактирования имеет возможность добавить связанные значения itens, но вместо отправки формы itens затрат я останавливаю ее, чтобы получить входные значения для создания объектов js, а затем помещаю их вмассив для отправки в качестве параметров при отправке формы сценария.При первом добавлении элемента затрат проверки на стороне клиента работают с формой, но следующие не проверяются.

Я попытался выполнить сброс с помощью метода resetClientSideValidations (), но он по-прежнему разрешает отправку неверных данных.Я проверил на консоли, когда происходит ошибка, клиенты проверяют правильность формы.

Это метод, который я использую для получения данных из формы, сброса их и блокирования отправки.После того, как он запускается один раз, проверки перестают работать.

$('#cost-item-form').submit(function(e) {
  cost_items.push({
    name: $('input#scenario_cost_item_name').val(),
    quantity: $('input#scenario_cost_item_quantity').val()
    });

    resetCostItemForm();
    renderCostItemGrid();

    return false;
});

Это способ сброса формы.

function resetCostItemForm() {
  $('input#scenario_cost_item_name', '#cost-item-form').val('');
  $('input#scenario_cost_item_quantity', '#cost-item-form').val('');
}

Существует способ повторно включить проверки клиентов после сброса формы

...