@Html.Raw生成的javascript无法正常工作

@Html.Raw生成的javascript无法正常工作,javascript,jquery,asp.net-mvc,Javascript,Jquery,Asp.net Mvc,我想在这个网站上做一个测验。目前,您可以输入测验、问题和答案。现在我正在写一篇参加测试的文章(任何关于如何做的建议都会有帮助!)。我遵循模型和生成的输出文件。现在,当我将代码复制到它自己的文件并运行它时,它运行正常。它确保所有问题都得到了回答,并会告诉您多个问题中哪一个是正确的 但是,当我从网站本身加载html原始生成的javascript时,它只检查您是否回答了其中一个问题,而不是另一个问题,并且在单击“完成”时,它只显示一个答案的结果。如果你两个问题都回答错了,它只会显示1个答案是错的,而不

我想在这个网站上做一个测验。目前,您可以输入测验、问题和答案。现在我正在写一篇参加测试的文章(任何关于如何做的建议都会有帮助!)。我遵循模型和生成的输出文件。现在,当我将代码复制到它自己的文件并运行它时,它运行正常。它确保所有问题都得到了回答,并会告诉您多个问题中哪一个是正确的

但是,当我从网站本身加载html原始生成的javascript时,它只检查您是否回答了其中一个问题,而不是另一个问题,并且在单击“完成”时,它只显示一个答案的结果。如果你两个问题都回答错了,它只会显示1个答案是错的,而不是2个(例如我的例子)

这是我的想法。下面是代码的详细信息

我只是不知道@Html.Raw生成的javascript为什么会出现问题。如果有其他的方法来写一个问答题,我也会洗耳恭听

谢谢

编辑:

同样,如果我将代码复制/粘贴到它自己的文件中,它可以工作,但从MVC渲染它就不能工作


老实说,我不明白为什么在每一行脚本上都使用
@Html.Raw()
。事实上,您将所有这些都放在一个
标记中,这完全没有必要,而且很难阅读。如果没有它,您仍然可以在需要时使用Razor语法和C#变量

我的猜测是,这是导致所有问题的部分原因,也许你遗漏了一些东西,因为很难看出什么可能是错的

在清理Html.Raw中的代码之前或之后,我建议您在页面上呈现元素后检查脚本的外观,并将其与单独脚本文件中的工作代码进行比较

如果您仍然无法让它工作,请向我们展示您清理的代码,以及正在工作的单独代码文件,也许我或其他人可以仔细查看

编辑:我试着用记事本++将您的粘贴箱中的代码和标记粘贴到一个简单的html文件中。保存并检查是否有任何错误。我确实遇到了一个错误:
$未定义
,这通常意味着库没有及时加载,或者根本没有加载。因此,在我看来,问题在于您将对jQuery库的引用放在测试脚本之后

在编写测验脚本之前,您有以下几行:

<script src="jquery.js"></script>

我不确定它是否有任何影响,因为您在页面底部有一个更具体的参考:

<script src="/Scripts/jquery-1.7.1.js"></script>

我所做的是在两者之间切换位置,以便将1.7.1.js引用放在测验脚本之前,然后我完全删除了另一个。所以剧本很有效。 我还将代码放入MVC视图中。虽然我没有时间设置所有控制器的东西和您最初拥有的foreach,但是如果我上面写的没有帮助,我接下来会检查控制器和视图之间的连接


不过,正如我在评论中所说,如果您查看浏览器开发工具中的控制台,我相信您会发现一些有用的东西。

您好,谢谢您的回复。问题是我的工作文件与MVC生成的代码完全相同。通过复制/粘贴代码并更改style.css和jquery.js行以匹配本地目录,我得到了这个()文件。据我所知,代码没有编程上的问题,我已经清理了它,我仍然有同样的问题。MVC呈现代码/html的方式让事情变得糟糕。如果有更好的方法,我可以描述我的问题,让我知道。你好!很抱歉没有早点回复。我经常检查这个,可能太累了,因为我还是搞不懂。但是谢谢你清理代码!我读起来容易多了。第一:您是否检查过chromes developer tools或firefox firebug的控制台中是否存在任何错误?无论如何,我有一个新的猜测,它可以是什么,但我要编辑我的答案,以避免在这里的文字墙(可能太晚了)。