Javascript 在提交第二个请求之前,卸载或清空上一个AJAX查询中的数据

Javascript 在提交第二个请求之前,卸载或清空上一个AJAX查询中的数据,javascript,jquery,ajax,object,Javascript,Jquery,Ajax,Object,我正在为飞行员和飞行签派员创建一个小型web应用程序,使他们能够自动计算给定机场每条跑道的逆风和侧风。我需要遍历从AJAX请求中作为Javascript对象接收的数据,到目前为止,它适用于第一个请求。但是当我重新提交表单时,就好像javascript对象没有被卸载或者类似的东西 例:假设我首先请求一个预报中有9种不同风向的机场,一切都很好,我可以从索引0迭代到8,没问题,然后当我第二次请求另一个机场时,假设。。3风在它的预测中,我将能够循环通过第二个机场的索引0到2没有问题,但是当我再次按下Ne

我正在为飞行员和飞行签派员创建一个小型web应用程序,使他们能够自动计算给定机场每条跑道的逆风和侧风。我需要遍历从AJAX请求中作为Javascript对象接收的数据,到目前为止,它适用于第一个请求。但是当我重新提交表单时,就好像javascript对象没有被卸载或者类似的东西

例:假设我首先请求一个预报中有9种不同风向的机场,一切都很好,我可以从索引0迭代到8,没问题,然后当我第二次请求另一个机场时,假设。。3风在它的预测中,我将能够循环通过第二个机场的索引0到2没有问题,但是当我再次按下Next时,它会显示第一个机场的第四个索引(所以风)。此外,正如您在代码中所看到的,我插入了一些console.log来尝试了解计数器的情况。。虽然第一个请求中有4个是正常的(我很可能最终会将所有内容合并到一个请求中),但第二个请求后我得到了8个,第三个请求后得到了12个,以此类推

为了学习,我想自己解决这个问题,但我甚至不知道现在的问题在哪里

以下是我的JS代码: (它相当长,所以我想你可能更喜欢外部链接)

还有我的控制台日志的图像。(为这张糟糕的画道歉)


我对Javascript还是很熟悉(一般来说,我是在两个月前用HarvardX CS50开始编程的),所以请容忍我。

“所以我想你可能更喜欢外部链接”——你错了。请看这里:如果代码太长,无法有意义地包含在问题中,那么就太长,无法最低限度地演示问题。请将问题的范围缩小到问题中可以包含和演示的更具体的内容。您的浏览器的调试工具对此非常有用。从投票结果来看:“寻求调试帮助的问题(“为什么此代码不起作用?”)必须包括所需的行为、特定的问题或错误以及在问题本身中重现该问题所需的最短代码。”-请阅读此处提供最少代码的原因,因为它会让您准确地思考问题的根源。如果您有150行代码和“问题”,那么您还没有确定原因。因此,您删除了您知道可以工作的部分和与其他部分类似的部分,例如删除所有详细的类更改(查看
$(“#id”).addClass()
)/用已知数据替换ajax调用/只有一个计数器/索引(不是4)。这将大大缩小您的代码范围,如果您做得足够深入,还可以留下几行代码来帮助您指出问题所在。@freedomn-m它就在
$内。post
之前,行为也是一样的,只是我在绝望中尝试了一些事情。我也只是再次尝试确认,行为是一样的。而且,我确实意识到发布较短的代码是受鼓励的,我也意识到我还没有确定原因。那正是我的问题,我不知道是什么原因造成的。到目前为止,我一直在寻找解决方案,一旦我发现了问题是什么,说实话,我甚至不想要解决方案,哈哈,我只是需要帮助找出哪里出了问题。下次我会尽量简洁一些。