【发布时间】:2013-10-24 15:36:53
【问题描述】:
很抱歉,我不能更具体 - 我不知道问题出在哪里。我是一个完全的初学者,我已经添加了我所知道的所有内容以添加到编码中,但是当我按下按钮时没有任何反应。目前我不知道这是编码中的错误,还是导致它无法工作的语法错误。
基本上,我试图让这个函数“Rip It”遍历杜威十进制数字列表,更改其中的一些,然后返回新数字和一条消息,说明它已被更改。还有一个标有“无编号”的,必须返回错误(不一定是警告框,在同一个空格中的消息是可以的。)
我是一个初学者,不是特别擅长这个东西,所以请温柔!非常感谢!
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function RipIt()
{
for (var i = l; i <=10 i=i+l)
{
var dewey=document.getElementById(i);
dewey=parseFloat(dewey);
if (dewey >= 100 && 200 >= dewey)
{
document.getElementById('dewey'+ 100)
}
else if (dewey >= 400 && 500 >= dewey)
{
document.getElementById('dewey'+ 200)
}
else if (dewey >= 850 && 900 >= dewey)
{
document.getElementById('dewey'-100)
}
else if (dewey >= 600 && 650 >= dewey)
{
document.getElementById('dewey'+17)
}
}
}
</script>
</head>
<body>
<h4>Records to Change</h4>
<ul id="myList">
<li id ="1">101.33</li>
<li id = "2">600.01</li>
<li id = "3">001.11</li>
<li id = "4">050.02</li>
<li id = "5">199.52</li>
<li id = "6">400.27</li>
<li id = "7">401.73</li>
<li id = "8">404.98</li>
<li id = "9">no number</li>
<li id = "10">850.68</li>
<li id = "11">853.88</li>
<li id = "12">407.8</li>
<li id = "13">878.22</li>
<li id = "14">175.93</li>
<li id = "15">175.9</li>
<li id = "16">176.11</li>
<li id = "17">190.97</li>
<li id = "18">90.01</li>
<li id = "19">191.001</li>
<li id = "20">600.95</li>
<li id = "21">602.81</li>
<li id = "22">604.14</li>
<li id = "23">701.31</li>
<li id = "24">606.44</li>
<li id = "25">141.77</li>
</ul>
<b> </b>
<input type="button" value="Click To Run" onclick="RipIt()">
<!-- <input type="button" value="Click Here" onClick="showAlert();"> -->
</body>
</html>
【问题讨论】:
-
AFAIK ID 不得以数字开头。
getElementById('dewey' + 100)应该怎么做? -
@T.J.Crowder 感谢您的更正。如果有人感兴趣,这里是定义“标识符”的官方规范:w3.org/html/wg/drafts/html/master/dom.html#the-id-attribute
-
欢迎来到 SO。你能澄清一下你想要达到什么目的吗?我对
"dewey"+100感到困惑,因为该 ID 不存在(或者您的数字列表不是最终的)。 -
@Shomz 谢谢-我从其他人的 cmets 中意识到,这将使元素“dewey100”不会像我一样将 100 添加到 100 到 200 之间的任何数字(由“dewey”标识的数字)试图做。任何想法如何做到这一点?谢谢!
标签: javascript if-statement parsefloat