用ajaxpost做了一个请求,代码是按照官方的格式,但是在实践过程发生这样的错误。
主要代码构成如下
<em id="return_mods"></em>
<form id="aform" enctype="multipart/form-data" method="post" autocomplete="off" action="**链接" onsubmit="ajaxpost('aform', 'return_mods', 'return_mods', 'onerror');return false;">
错误代码位置
if(s != '' && s.indexOf('ajaxerror') != -1) {
错误提示代码
Uncaught TypeError: s is undefined
错误提示截图
几个可能错误排除:
1 未定义s,在JS中增加: var s; 定义一下。但大概率可能会保持错误。
2 JQ类引用顺序问题,应先引入jquery.min.js 再引入ajax.js,也就是将jquery.js排在ajax.js前面。
3 返回值可能为空或错误。你可以使用谷歌或360极速浏览器,页面右键->审查元素->网络,第3排选择XHR.然后再点击AJAX提交,这时XHR项目下会出现提交的AJAX连接。选中连接->从右边即可看到AJAX提交的数据和返回的结果如何。
你的js依赖引用正确了吗
<script src="jquery.js"></script>
<script src="ajaxpost.js"></script>
检查一下是否是js文件引入顺序不对造成的,ajax.js 和 common.js的引用顺序调换一下试试
类引用的顺序问题,先引入jquery.min.js类 再引入ajax.js类
类型错误,提前定义好var s
这个很明显官方只是给个例子,省略了变量的定义
你的s未定义成功
未定义s,在JS中增加: var s; 定义一下