[英]Putting values into dynamically generated input types with JavaScript
我有Range / Number類型的輸入,它們被同步並動態生成輸入字段和它們的值一樣多。
然后我有一個按鈕,用任意值填充生成的輸入字段。
動態生成的輸入字段每個都有唯一的ID,但document.getElementById()
函數無法找到任何ID並返回null。
有沒有辦法在randomizeItemTypes()
函數中更改生成的字段的值?
function randomizeItemTypes(textbox) {
var rackNum = textbox.replace("itemSlider", "").replace("numOfTypes", "");
var numOfTypes = document.getElementById("numOfTypes1").value;
for (var i = 0; i < numOfTypes; i++) {
document.getElementById("rack" + rackNum + "." + i).value = 4;
}
}
以下鏈接是CodePen到我的代碼: http ://codepen.io/cnc4ever/pen/LGNMEp
多謝你們!
你的rackNum
給出了一些字符串而不是數字你的文本框id就像rack1.0 , rack1.1
使用document.getElementById("rack1" + "." + i).value = 4;
代替
<html>
<head>
<title></title>
</head>
<body>
<div class="itemsTypes1">
<input id="itemSlider1" type="range" value="" min="1" max="10" step="1" onchange="printValue(this.value);drawItemTypes('itemSlider1');" />
<input id="numOfTypes1" type="number" value="" min="1" max="10" onchange="printValue(this.value);drawItemTypes('numOfTypes1');" />
<p id="itemTypes1Area"></p>
<button id="randomize1" onclick="randomizeItemTypes()">Randomize</button>
</div>
<script type="text/javascript">
function printValue(data) {
var x = document.getElementById("itemSlider1").value = data;
var y = document.getElementById("numOfTypes1").value = data;
}
function randomizeItemTypes() {
var randomValue= Math.ceil(Math.random()*10);
printValue(randomValue);
}
</script>
</body>
</html>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.