查找命名对象数组中存在的值的输入

时间:2016-10-17 11:35:44

标签: javascript jquery

我使用JQuery 3和AJAX提交表单如下:

$("#send-question").on("submit", function (event) {

  event.preventDefault();

  $.post("api/questions", { content: "content" })
  .done(function (data, status, xhr) {
    console.log(data);
  })
  .fail(function (xhr, status, error) {

    var errors = $.parseJSON(xhr.responseText);

      $(this).find(":input[name]");

    });
});  

对象错误是一个对象数组,例如:

{ flag="content", info="the content is required" }

我需要在表单中找到具有name属性的所有输入。

然后,如果名称与数组中的一个错误上的标志相匹配,则只需在输入后的范围内添加信息:

input.parent().append("<span class='error'>" + error.info + "</span>");

我只是不确定如何找到哪些输入在数组中有错误。

1 个答案:

答案 0 :(得分:1)

浏览每个错误并查找包含内容名称的输入。可能看起来像这样

errors.forEach(function(element, index, array){
    $('input[name="'+element.flag+'"]')
        .parent()
        .append("<span class='error'>" + element.info + "</span>");
})