gpt4 book ai didi

javascript - 如果工作,为什么这个 javascript 不与 else 一起使用?

转载 作者:行者123 更新时间:2023-11-30 12:54:52 25 4
gpt4 key购买 nike

抱歉,我无法提供更具体的信息 - 我不知道问题出在哪里。我是一个完全的初学者,我已经添加了我所知道的一切以添加到编码中,但是当我按下按钮时没有任何反应。我现在不知道是编码错误,还是语法错误导致无法正常工作。

基本上,我试图让这个函数“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>

最佳答案

我看到了一些问题:

  1. 您需要确保 HTML 中的 id 值与您实际输入 getElementById 的值相匹配。例如,您有 document.getElementById('dewey'+ 100),它将查找具有 id"dewey100" 的元素,但我在您的标记中没有看到任何具有该 id 值的元素。

  2. 您似乎在本应输入数字 1 的地方输入了小写字母 l(在您的 for 中循环)。

  3. 这段代码:

    var dewey=document.getElementById(i);
    dewey=parseFloat(dewey);

    ...从 i 中检索具有 id 的元素(到目前为止还不错),然后尝试将 元素 解析为一个 float 。 DOM 元素是对象,将它们传递给 parseFloat 不会做任何有用的事情。 :-) 在这种情况下,如果您尝试解析元素的内容,您可以通过 innerHTML 属性或(在大多数浏览器上)innerText 获取它只是文字。所以也许:

    var dewey=document.getElementById(i);
    dewey=parseFloat(dewey.innerHTML);
  4. document.getElementById('杜威'+ 100)

...本身就是一条“什么都不做”的行:它查找元素,但随后不对其执行任何操作。我建议进行更改,但我不知道您要对该元素做什么。 :-)


您可能没有意识到它(新的),但您的浏览器几乎肯定有一个非常强大的工具,称为“调试器”。查看菜单,但在大多数浏览器中,您可以使用 F12 键访问“开发工具”。然后转到结果窗口中的“源代码”或“代码”选项卡,这将显示您的代码。如果您单击一行的左侧,在大多数设置断点 的调试器中,该断点将在该点停止其轨道中的代码,以便您可以看到发生了什么。花一些时间学习使用该工具是值得的,这样您就可以实际观察您的代码运行情况。

关于javascript - 如果工作,为什么这个 javascript 不与 else 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19570338/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com