猿问

一场页面载入事件引发的血案

碰到了一个问题,我打算写一个option的工具类,这样的话可以方便我来构造opention标签,先上代码

意图很明确,通过ajax像后台传入一个dictypeCode的参数,来得到一个json数据,后台数据是由Hibnate来进行查询的,后台代码我确定没啥问题
然后我写了一个页面载入的事件来调用这个函数,类似于这样

https://img4.mukewang.com/5c835c4600011a1d08000304.jpg

这是一个Jquery的函数,通过第一个参数来决定像后台传入那些数据,本来以为到这就写好了,但是奇葩的事情却发生了

https://img4.mukewang.com/5c835c480001df6408000211.jpg

我在上面的那个函数里自己构造了一个option标签,但是查到的数据却是一样的,通过打印后台的json我看到了这个

https://img1.mukewang.com/5c835c4900012a8a08000083.jpg

这让我觉得很惊奇,我在页面载入事件里明明传的是001,002,004,到后台怎么都解析成了001了呢,以为自己代码写错之后不甘心的刷新了一下页面,结果却变成了这样:

https://img4.mukewang.com/5c835c640001fe5407830260.jpg

这让我更加的不解了,看了下后台的json数据,数据却是这样的

https://img.mukewang.com/5c835c690001b7fb08000167.jpg

于是再次刷新了下页面,数据却又是正确的了

https://img3.mukewang.com/5c835c6d0001c2a106710237.jpg

这让我觉得非常不理解,为什么有时候刷新页面数据是错误的,有时候却又是正确的,有时候数据又都是重合的,查了半天也没查出什么原因,求解,感激不尽


慕尼黑5688855
浏览 365回答 1
1回答

慕妹3242003

下面来分析下原因:首先我以为是缓存的问题,但是ajax post提交是没有缓存的,多说一嘴,我这个网站是SSH架构的,通过边城网友的启发我去浏览器抓了一下前端的数据包,发现数据是正常提交到后台的,但是后台的代码返回的json却是固定的,于是我去看了下spring的配置文件很明显,我先前并没有设置scope属性,导致spring只为后台的baseDictaction创建了一个对象,尽管我提交上去的数据是三个,但是如果只创建了一个对象的话相当于我只访问了一次baseDictaction,于是把Scope属性改成多例的,问题解决
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答