JS函数替换输入最后一位数为0?

时间:2017-12-29 00:31:29

标签: javascript

我有一个脚本从api获取大量信息,然后在我的网站上列出。然后我有一个函数newLink(z),它应该从创建的新元素中获取信息并用它来处理它,以简化它我只是尝试console.log,无论它在下面说什么。我放入函数括号中的任何数字,在本例中为76561198008132325,无论出于何种原因,最后一位数字都替换为0,从而导致控制台记录' 76561198008132320'。我现在已经在这个半小时的时间里摸不着头脑了,我真的无法弄清楚是什么造成了这个。



    var searchRequest = "https://api.roleplay.co.uk/v1/search/player?name=ant";
    var searchData = "";
    
    function success(data) {
      for (i = 0; i < data['length']; i++) {
          

          
          document.getElementById("searchResults").innerHTML += "<div class='result' onclick='newLink(76561198008132325)'>new link</div>";
      }
    }

function newLink(z) {
    console.log(z);
}


    $.ajax({
      dataType: 'json',
      url: searchRequest,
      data: searchData,
      success: success
    });
&#13;
<div class="results" id="searchResults">
        </div>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

这是因为您将参数作为Number传递给函数。将参数值传递为string

var searchRequest = "https://api.roleplay.co.uk/v1/search/player?name=ant";
var searchData = "";

function success(data) {
  for (i = 0; i < data['length']; i++) {
  document.getElementById("searchResults").innerHTML += "<div class='result' onclick='newLink(\"76561198008132325\")'>new link</div>";
  }
}

function newLink(z) {
    console.log(z);
}

$.ajax({
  dataType: 'json',
  url: searchRequest,
  data: searchData,
  success: success
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="results" id="searchResults">
</div>