映射两个对象并连接在一起

时间:2019-05-05 00:58:58

标签: javascript jquery ajax

我正在尝试将ajax的数据结果连接到const res。 因此理想情况下,列表顺序为

  • 攻击402983
  • 防御1500
  • 强度70
  • HitPoints 68

正如您在下面看到的那样,我很难将两者以列表形式附加到一起。来自ajax数据的示例是402983,1500,70,68

HTML

<form class="form-inline mt-2 mt-md-0">
  <input class="form-control mr-sm-2" type="text" name="search" placeholder="Search"/>
  <button id="search-btn" class="btn btn-outline-success my-2 my-sm-0" type="submit">Search </button>
</form>

<ul id="response">         
</ul>

JAVASCRIPT

// this is the id of the form
  $('#search-btn').on('click', function(e) {
    e.preventDefault();

    var url = "?player=";
    var player = $('input[name="search"]').val();
    var urlAddition = url + player

    $.ajax({
      url: urlAddition,
      dataType: "html",
      success: function(data) {
        const res = 'Attack, Defense, Strength, HitPoints';
        const list = res.split(",");
        const listdata = data.split(",");
        const secondlists = listdata.map(item => + item);
        $('ul#response').html(list.map(item => '<li>' + item + secondlists + '</li>').join(''));
      }
    });
  });

1 个答案:

答案 0 :(得分:1)

您可以使用处理程序中的第二个参数,即索引。

$('ul#response').html(list.map((item, i) => '<li>' + `${item} ${listdata[i]}` + '</li>').join(''));
                                      ^                                  ^

如您所见,这种方法直接使用数组listdata