按顺序生成数字在字段输入/表格中

时间:2018-07-23 07:33:43

标签: javascript html forms

我只是想知道我是否可以按字段输入/表格的顺序生成数字,我知道您可以随机生成,但是我希望按顺序加载数字,无论如何都可以这样做?

 function randomNumber(len) {
    var randomNumber;
    var n = '';

    for(var count = 0; count < len; count++) {
        randomNumber = Math.floor(Math.random() * 10);
        n += randomNumber.toString();
    }
    return n;
}

document.getElementById("userID").value = randomNumber(6)
<form class="short_form" name="add" method="post" action="submit.php">

  <input type="text" name="x" value="" id="userID"> 
  
  <a href="#" class="sh_sub" nclick="document.add.submit();">submit</a>
</form>

2 个答案:

答案 0 :(得分:1)

创建一个数组,对其进行排序,将结果加入并放入输入字段:

const numbers = n => Array.from({length: n}).map( v => Math.floor(Math.random() * 10) );
const fillNumbers = () => 
    document.querySelector("#numbers").value = numbers(6).sort().join("");
document.querySelector("button").addEventListener("click", fillNumbers);
your numbers: <input disabled type="text" id="numbers"> <button>fill</button>

答案 1 :(得分:0)

我想您正在寻找一种解决方案,可以按顺序输入数字。

我使用方法Array.sortArray.join()来获取排序的数字(以字符为单位)。

然后返回转换为整数的值。

如果这是错误的,请告诉我。

function randomNumber(len) {
    var randomNumber;
    var arr = [];

    for(var count = 0; count < len; count++) {
        randomNumber = Math.floor(Math.random() * 10);
        arr.push(randomNumber.toString());
    }
    arr.sort(function(a,b){
      // descending
      return b-a;
      //or accending
      //return a-b;
    });
    return parseInt(arr.join(''));
}

document.getElementById("userID").value = randomNumber(6)
<form class="short_form" name="add" method="post" action="submit.php">

  <input type="text" name="x" value="" id="userID"> 
  
  <a href="#" class="sh_sub" nclick="document.add.submit();">submit</a>
</form>