我无法弄清楚为什么这不能正确输出,脚本应该在用户给出的范围内输出每个倍数的列表,但是,我没有对broswer采取任何行动,调试不会发现任何问题,
function findMultiples() {
'use strict';
var startingInt = document.getElementById('startingInt').value ;
var endingInt = document.getElementById('endingInt').value ;
var multiple = document.getElementById('multiple').value ;
var unListOutput ='';
for (var i = startingInt; i < endingInt ; i--){
unListOutput += ((i/multiple)%2==0) ?'<li>'+ i + ' is '+multiple+' x '+(i/multiple)+'</li>': '';
}
unList = document.getElementById('list');
unList.innerHTML = unListOutput ;
return false;
}
function init() {
'use strict';
document.getElementById('theForm').onsubmit = findMultiples;
}
window.onload = init;
答案 0 :(得分:0)
您的代码有两个问题:
(i++)
var unList = document.getElementById('list');
因此您的代码可以生成您的列表,如下面的代码:
<script> function findMultiples() { 'use strict'; var startingInt = 0; //for the test purpose var endingInt = 10; //for the test purpose var multiple = 2; //for the test purpose var unListOutput = ''; for (var i = startingInt; i < endingInt ; i++) { unListOutput += ((i / multiple) % 2 == 0) ? '<li>' + i + ' is ' + multiple + ' x ' + (i / multiple) + '</li>' : ''; } var unList = document.getElementById('list'); unList.innerHTML = unListOutput; //return false; } function init() { findMultiples(); //for the test purpose } window.onload = init; </script>
html元素:
<ul id="list"></ul>