JavaScript在本地工作,但在部署到web服务器时不起作用
JavaScript works locally but not when deployed to webserver
我正在部署一些代码到一个网站,当我做JavaScript不运行。我得到错误:
SCRIPT5007:属性'$'的值为空或未定义,不是一个函数对象。
它使用的代码是
@model MVCMasterDetail.DataAccess.cwwoLoadCurrentWorkOrderActualsResult[]
<script type="text/javascript">
$(document).ready(function () {
$(".grid-toggle").click(function () {
$(this).closest("table").find("tbody").show();
});
$(".hide-rows").click(function () {
$(this).closest("table").find("tbody").hide();
});
});
</script>
@Html.Partial("MasterDetailMasterPartial")
调用它的是:
<td colspan="4"> Details<br/><a href="javascript: void(0)" class="grid-toggle">Show- </a><a href="javascript: void(0)" class="hide-rows">Hide</a></td>
根据您在Ashley Ross的回答中的评论,看起来您试图使用相对路径添加jQuery。它看起来也像你在使用MVC。在MVC中,你想在html中引用文件的方式是:
<script src="@Url.Content("~/Scripts/jquery-1.7.1.js")"></script>
同样,你的script标签是否在head标签中也不重要。唯一的区别是装载。通过将其放在head标签中,您告诉浏览器在开始加载主体之前下载js文件,这可能很好,但也可能增加页面加载时间。为了更快地下载页面,您实际上需要将脚本标记放在body标记的底部,这将延迟下载js文件,直到页面的其余部分加载完毕。这将导致更快的页面加载时间,但如果您没有预料到它,可能会导致一些奇怪的行为。
您需要在任何其他脚本之前包含jQuery。听起来你有一些类似
的东西<script type="text/javascript" src="customScriptThatUsesjQuery.js"></script>
<script type="text/javascript" src="jquery-x.y.z.min.js"></script>
不是<script type="text/javascript" src="jquery-x.y.z.min.js"></script>
<script type="text/javascript" src="customScriptThatUsesjQuery.js"></script>
检查它是否出现在你的HTML源代码中,比其他使用它的脚本更早。
您必须在<head>
中添加对jquery库的引用
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" type="text/javascript"></script>
相关文章:
- node.js将字符串转换为要上传到Web服务器的文件
- 根据HTML文件名授予web服务器写入权限
- 从Web服务器下载图像按钮单击使用JavaScript
- 使用c#在Web服务器上运行JavaScript方法
- 我如何设置HTTP头“;访问控制允许起源”;用于来自thttpd web服务器的HTTP响应
- 用于在web服务器中上载的文件路径
- Web服务器意外退出,正在重新启动新实例
- PhantomJS与嵌入式web服务器只使用一个CPU
- 错误301在web服务器上永久移动
- jQuery插件在本地主机上运行良好,但在web服务器上却与bg镜像混淆
- 如何确保只有您的javascript才能连接到您的Web服务器
- 从本地HTML / JavaScript(没有Web服务器)访问Google API
- 如何在 Javascript 函数中拦截 Web 服务器响应
- 用于嵌入式设备的占地面积最小的web服务器
- 将PHP/MMySQL转移到新的Web服务器,所有链接都会出现标签
- API的Web服务器
- 在drawImage、C#、AJAX、ASP.NET之后将图像从画布保存到Web服务器
- 如何通过C程序与web服务器对话
- 更新网页上Web服务器程序的实时输出
- Javascript在本地工作,不会在Web服务器上工作