开发者社区> 问答> 正文

菜鸟jquery求救!!?报错

刚开始研究jquery,现在遇到如下问题,以下是chrome报错:

$ . ajax ({
Uncaught TypeError: Object function $(){var elements=new Array();for(var i=0;i<arguments.length;i++) {var element=arguments[i];if(typeof(arguments[i])=='string'){element=document.getElementById(arguments[i]);}if(arguments.length==1){return element;}elements.Push(element);}return elements;} has no method 'ajax' (repeated 2 times)
url : 'getStore' ,
type : 'post' ,
data :{ storename : '12313' },
dataType : 'json' ,
success : function ( data , textStatus ){
alert ( "请求成功" );
if ( data . result == 'failed' ){
$ ( ".error" ). text ( data . errorMsg );
}
else if ( data . result == 'success' ){
$ ( ".error" ). text ( "" );
}
},
error : function (){
alert ( "请求错误" );
}
});
看报错的意思是我没有ajax这个方法,我引用的Jquery版本是 jquery-1.7.2.min.js, 我去这个jquery包里找了,确实存在ajax无误, 语法不应该存在问题,因为我拷贝到w3cschool的测试文本框里边,运行代码正常执行,正常 alert ( "请求错误" );

请问我该怎么解决?


展开
收起
爱吃鱼的程序员 2020-06-22 17:29:25 515 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    你的$被别的什么js污染了吧
    回复<aclass='referer'target='_blank'>@wang_liran:http://blog.endlesscode.com/2010/01/23/javascript-prototype-chain/看看这篇文章,大概就能有点了解了怎么解释,我是菜鸟,麻烦详细说说回复<aclass='referer'target='_blank'>@wang_liran:估计是那个js里面污染了prototype原型链污染倒不是,是有一个js文件本身有问题,所以出现这种情况,但是那个js文件和这个没有半毛钱关系,不知道为什么会冲突我把w3cschool的jquery.js文件copy下来然后外链之,发现依然报错,应该可以排除是jquery库的问题楼主代码用的是全角标点符号?
    应该没有输错的,因为同样的代码复制粘贴到w3cshool文本编辑框内运行一样也是可以运行成功的,就是自己这里不行你有看到发送出了请求么请求返回了什么状态码回复<aclass='referer'target='_blank'>@-Jw-:我换了jquery-1.10.2.min.js,jquery-2.0.3.min.js,还有w3cschool的jquery.js,全部都报错,我觉得不是版本问题回复<aclass='referer'target='_blank'>@wang_liran:你换个jquery的版本试试回复<aclass='referer'target='_blank'>@-Jw-:是复制的回复<aclass='referer'target='_blank'>@wang_liran:你这段代码是复制的么我查看过,并没有任何的请求,但是w3cschool就能请求到位

    $(document).ready(function(){

      $("#ButtonId").click(function(){

            varstr='{"param1":"hello"}';
            $.ajax({
                url:'你的url',
                type:'post',
                dataType:'json',
                data:"filterParam="+str,
                error:function(){
                    alert('error');
                },
                success:function(data){
                    //alert('success');
                    $("#showData").append(''+data.Hello+'');
                    //alert(data.Hello);
                    }
                })

    })

    })

    你用firefox调试看看报哪个错误?errorinfo贴上来、你的后台有木有报错?后台是否有响应数据给前台?这个我试过了,一样报错各位,我找到问题了,原来是一个js文件冲突了,删掉之后就正常运行了,虽然我没看懂那个js文件什么意思,但是谢谢各位啦!!js就这点不好,好多错误浏览器都不会直接提示。对,查错很费力,我被jq虐惨了<divclass="ref">

    引用来自“Narky”的答案

    <divclass=ref_body>你的$被别的什么js污染了吧
    回复<aclass='referer'target='_blank'>@Narky:你这答案靠谱,可是现在源码暂时不在我这,我有机会改改试试你在浏览器输入URL的地方输入javascript:alert($);看看打印出来的是什么..这是定义了一个方法,模仿jquery的选择器,返回选择的元素。和jquery的$重名了。其实你把上面的$.ajax改成jQuery.ajax也可以运行只接F12打开开发者工具,然后执行ajax事件看下有没ajax请求,如果有就可以排除$.ajax不存在的可能性了.我打开开发工具看过,没有ajax请求你除了引入jquery还有没有导入其他的?没了,只用jquery

    2020-06-22 17:29:41
    赞同 展开评论 打赏
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
JS零基础入门教程(上册) 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载