Jquery-Uncaught ReferenceError: $ is not defined报错

在我的jsp页面上有这些js代码:

//加载数据
  	$(document).ready(function() {

		var param={};
		param.page=3;
		param.size=10;

		$.post(home+"/user/queryAllInfo",param,
			function(result)
			{
				if(result !=null && result.success)
					{
						var obj =result.rows;

						for ( var i = 0; i < obj.length; i++) {

							var user =obj[i];

							var tr = "<tr><td>"
								+ user.MEMBERNAME
								+ " </td>  <td>"
								+ user.ACCOUNTNUMBER
								+ " </td>  <td>"
								+ user.AGE
								+ " </td>  <td>"
								+ user.GENDER
								+ " </td>  <td>"
								+ user.BIRTHDAY
								+ " </td>  <td>"
								+ user.MEMBER_LABEL
								+ " </td>";

							$(".userTable").append(tr);
						}

					}else
						{
						alert(result.msg);
						}

		},"json"
		);

	});  

function onOK()
{
	alert("OK?");

	$("#loaddiv").text("ok");
}

当访问这个页面时,google浏览器按F12 会提示Uncaught ReferenceError: $ is not defined 错误,并提示是 $(document).ready(function() {   是这行出错。

猜想: 1.以为是引入的jquery.js 文件版本的不匹配,更换后还是出错。

2.有以为是导入的其他js文件产生冲突导致的。

3. jquery.js文件的路径错误。

4. 加载js文件的顺序的问题,又把jquery.js放到第一位。

上面几种方法还是提示出错。

接着在页面 添加了一个 onOK()事件,里面有$("#loaddiv").text("ok");  发现这个可以没有问题,所以觉得应该不是jquery.js的错误。

把代码放到 onOk函数中:如下

function onOK()
{
	alert("OK?");

	var param={};
	param.page=3;
	param.size=10;

	$.post(home+"/user/queryAllInfo",param,
		function(result)
		{
			if(result !=null && result.success)
				{
					var obj =result.rows;

					for ( var i = 0; i < obj.length; i++) {

						var user =obj[i];

						var tr = "<tr><td>"
							+ user.MEMBERNAME
							+ " </td>  <td>"
							+ user.ACCOUNTNUMBER
							+ " </td>  <td>"
							+ user.AGE
							+ " </td>  <td>"
							+ user.GENDER
							+ " </td>  <td>"
							+ user.BIRTHDAY
							+ " </td>  <td>"
							+ user.MEMBER_LABEL
							+ " </td>";

						$(".userTable").append(tr);
					}

				}else
					{
					alert(result.msg);
					}

	},"json"
	);

	$("#loaddiv").text("ok");
}

发现没有出现之前的Uncaught ReferenceError: $ is not defined 错误,而是提示 406 (Not Acceptable)
,百度查找后406 (Not Acceptable)后才知道原来在controller控制层用到了@ResponseBody ,要把对象转换成json格式,缺少转换依赖的jar包 ,后来添加了jackson-xc-1.8.3.jar
,jackson-mapper-asl-1.9.2.jar jackson-core-asl-1.9.2.jar ,jackson-jaxrs-1.8.3.jar ,json-lib-2.4-jdk15.jar
这些包,程序运行正常了。

 json包下载:http://download.csdn.net/detail/u013147600/9023171

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-03 23:36:39

Jquery-Uncaught ReferenceError: $ is not defined报错的相关文章

jQuery 之 setTimeout 传递字符串参数报错

当你打算调用一些jQuery代码显示隐藏的一个元素,并调用setTimeout()在一段延时之后设置其HTML的内容: 整个页面的代码是这样的. <span style="font-size:18px;"><html> <head> <title></title> </head> <body> <a href="#" id='heihei' onclick="show

jQuery跳出each循环:JS报错:illegal break statement

今天在JS中运用jquery中each写一个简单的循环语句时,在执行跳出循环操作时,遇到JS报错:Uncaught SyntaxError: illegal break statement 非法的break语句,导致执行错误. 于是查看了以前的代码: if(flag){ second = true; return false; } 其中,return false 就相当于break: 而continue则可以用return true代替. 错误很简单,由于大意加上惯性思维,一时没明白. 在此地做

java win10 配置jdk的环境变量,project sdk is not defined报错

系统升级后原先设置的环境变量需要重新配置,在win10里面配置环境变量的时候碰到了一些麻烦,第一次配置环境变量的时候使用传统的配置方式设置了 CLASSPATH为.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; JAVA_HOME为C:\Program Files\Java\jdk1.8.0_60 PATH为%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin 配置完成后yunx java -version 提示找不到命令

MySQL中出现Multiple primary key defined报错提示之解决办法

创建主键可以有两种方式: create table 表名(字段名 类型,字段名 类型,--primary key(name)); 或者是 create table 表名(字段名 类型 primary key,字段名 类型,--); 但是要注意的是,想要创建复合主键,就不可以用第二种方式.下面列举一个小例子:这里报错Multiple primary key defined,表示定义了多个主键,正确的写法是如下:如果项设置复合主键,复合主键的特点是同时创建.同时删除,所以需要把主键删除,但是这里设置

关于vue,webpack 中 “exports is not defined”报错

vue项目npm run dev 后项目报错 : 提示 "exports is not defined". 导致这个问题是因为balbel的配置文件.babelrc的问题: { "presets": [ ["env", { "modules": false }], "stage-2" ], "plugins": ["transform-runtime"], "

regeneratorRuntime is not defined报错处理

提示这个报错是因为使用了async/await等es7语法,需要babel进行转换 具体:(babel7) $ yarn add @babel/runtime && yarn add --dev @babel/plugin-transform-runtime 并在.babelrc里面添加如下: { ..., plugins: ['@babel/plugin-transform-runtime'] } 原文地址:https://www.cnblogs.com/musiq66/p/111865

微信支付 WeixinJSBridge is not defined 报错

我没有用到微信JS-SDK或者接口都正确返回预支付id都正确, 为什么会报这个错呢?答: 微信内置浏览器会有WeixinJSBridge ,但是需要一定的加载时间. 我使用了微信JS-SDK, 但是为什么会出错呢?答: 微信webview注入钩子有时序问题:在WeixinJSBridge 还未注入之前,就已经成功注入其它依赖于WeixinJSBridge 的其它XX模块.在XX模块中调用WeixinJSBridge 就会失败. 如何解决 如果你开发一款移动应用,必不可少要考虑分享到微信的功能:如

jQuery.form Ajax无刷新上传报错 (jQuery.handleError is not a function) 解决办法

今天在用ajaxfileupload时firebug报了一个"jQuery.handleError is not a function"的错误.因为在以前使用jQuery.form一直都没有出现过这个问题,我对比以前的项目才发现,在这个项目中使用的jQuery是1.10.2的版本,而以前是使用的1.4.2.度娘一番之后,找到解决办法:jQuery.handleError is not a function 报错原因是: handlerError只在jquery-1.4.2之前的版本中存

解决在vue_cli上使用mui或引入mui.js各种报错及问题

原文:https://blog.csdn.net/u012815877/article/details/81187826 在main.js里添加 import mui from './assets/js/mui.js' 如果不添加下面会显示mui is not defined 报错 Vue.prototype.mui = mui 添加成功后就可以使用mui 了?  结果发现在vue里会使用严格模式,而mui不支持严格模式上使用,就会报错  Uncaught TypeError: 'caller'