请问javascript,如何按下button后,在一个文本框里产生一个随机数。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请问javascript,如何按下button后,在一个文本框里产生一个随机数。相关的知识,希望对你有一定的参考价值。
<!DOCTYPE html><meta charset="utf-8">
<title>随机数</title>
<label for="min">取值范围:</label>
<input name="min" id="min" value="0">
-
<input name="max" id="max" value="99">
<br>
<br>
<label for="length">小数位数:</label>
<input name="length" id="length" value="0">
<br>
<br>
<input name="random" id="random" readonly="readonly">
<input type="button" id="generator" value="生成">
<script>
var randomBtn = document.getElementById('generator'),
minInput = document.getElementById('min'),
maxInput = document.getElementById('max'),
randomInput = document.getElementById('random'),
lengthInput = document.getElementById('length');
on(randomBtn, 'click', function()
var maxValue = parseInt(maxInput.value),
minValue = parseInt(minInput.value),
length = parseInt(lengthInput.value);
randomInput.value = randomRange(minValue, maxValue, length);
);
function on(element, event, callback)
if (element.addEventListener)
element.addEventListener(event, callback, false);
else if (element.attachEvent)
element.attachEvent('on'+event, callback);
else
element['on'+event] = callback;
function randomRange(min, max, length)
min = +min;
max = +max;
length = +length;
var r = Math.random() * (max-min) + min;
return (+r).toFixed(length||0);
</script> 参考技术A
随机数有什么要求的吗?还是说随便一个数都行?这样的话看代码:
<input type="text" value="" id="input1" /><input type="button" value="button" onclick="document.getElementById('input1').value=Math.random()" />追问
我把onclick后面设了一个function为什么就不行呢?
追答代码贴出来我看看是什么原因
追问谢谢了,大神
document.getElementById这个要注意大小写,你看你写的全变成小写了,一定要注意,哪里要大写哪里要小写不能错,Math也要开头大写。
js的函数是需要区分大小写的,命名规范一般是驼峰式命名,你下次如果不知道这个js的函数是哪里需要大写或小写的,你先查一下资料或网上百度一下这个函数。
没用啊,还是没反应。。。。
追答那你把你的js代码放到最下面,html标签的底部
追问什么意思?不要?
追答<html><meta charset="utf-8" />
<head>
</head>
<body>
<input type="text" value="" id="input1" />
<input type="button" value="button" onclick="rolldice()" />
</body>
<script>
function rolldice()document.getElementById('input1').value=Math.random()
</script>
</html>
你照着这个代码来看你的代码和这个有什么不同
javascript按钮onclick按下只能工作一次
我是Javascript的新手,有以下问题:
HTML:
<div id="button"></div>
JS:
for (var items in $scope.data.users){
if ($scope.data.users.hasOwnProperty(items)) {
document.getElementById("button").innerHTML += "<button onclick='console.log(5)'>"+items+"</button>";
console.log(items);
}
}
到目前为止,我的json对象中的所有用户都被读取并且为每个项目创建了一个按钮,当我单击一个按钮时,它会在控制台中显示正确的测试“5”。但是,当我重复点击时,出现错误,我不知道为什么......
我认为您的数组或范围在click事件上已更改。
虽然以下示例不是用(我相信)您的Angular模块编写的,但它确实可以工作并迭代列表,创建按钮并且不会抛出任何错误或异常。基本上它是具有不同数组的相同代码。试着找出它和你自己的代码之间的区别。
我改变的唯一一件事就是让$scope.data.users
成为一个整数数组。
let arr = [1, 2, 3];
for (var items in arr){
if (arr.hasOwnProperty(items)) {
document.getElementById("button").innerHTML += "<button onclick='console.log(5)'>"+items+"</button>";
console.log(items);
}
}
<div id="button"></div>
以上是关于请问javascript,如何按下button后,在一个文本框里产生一个随机数。的主要内容,如果未能解决你的问题,请参考以下文章