从两个不同的哈希值中渲染JSON错误

时间:2016-06-08 14:25:37

标签: javascript json

最初我有1个哈希只会返回表单的错误。但是现在我有两个可以包含错误的哈希。现在,我想查看它们并将其显示给用户。以前我只有1,那是有效的是这段代码:

<script>
  $("#payment-form").on("ajax:error", function(e, data, status, xhr) {
    App.OrderRequests.throwFormError();
    $('#payment-form').render_form_errors(data.responseJSON)
  });

  $.fn.render_form_errors = function(errors) {
    var form;
    form = this;
    this.clear_form_errors();
    return $.each(errors, function(field, messages) {
      return form.append('<span class="help-block">' + $.map(messages, function(m) {
        return m.charAt(0).toUpperCase() + m.slice(1);
      }).join('<br />') + '</span>');
    });
  };

  $.fn.clear_form_errors = function() {
    this.find('.form-group').removeClass('has-error');
    return this.find('span.help-block').remove();
  };
</script>

这已经通过javascript推动了我的专业知识。现在我返回的典型JSON响应是这样的:

"{\"base\":[\"Your card's security code is incorrect.\"]}"

但是现在我想要像这样返回JSON(因为我在同一个表单上保存到两个不同的模型):

"{\"address\":{},\"card\":{\"base\":[\"Your card's security code is incorrect.\"]}}"

所以我想基本上打印可能隐藏在地址或卡内的错误。所以我需要调整代码来检查这些,但是我不知道如何实现它。

0 个答案:

没有答案