ajax的问题,此问题只是在win8系统下的火狐浏览器发现的
页面中div有一个onclick事件,事件中请求了一个一般处理程序原始的js脚本如下:
<pre name="code" class="javascript">function test()
{
$.ajax({
url: '../handler/test.ashx',
data: {
Action: "insertOrder",
goodid: "21",
memberid: "9",
buynum: 1,
R: Math.random()
},
success: function(msg) {
alert("abc");
}, error: function(msg) { alert(msg); }
});
}
此方法中没有指定type类型,type应该是按默认的get走的,实际在win8系统火狐浏览器下测试的时候,发现偶尔出现请求一般处理程序2次的情况。修改为
<pre name="code" class="javascript">$.ajax({
url: '../handler/test.ashx',
data: 'Action=insertOrder&goodid=21&memberid=2&buynum=1',
success: function(msg) {
alert("abc");
}, error: function(msg) { alert(msg); }
});
或者
<pre name="code" class="javascript">$.ajax({
url: '../handler/test.ashx',
type:'post',
data: {
Action: "insertOrder",
goodid: "21",
memberid: "2",
buynum: 1,
R: Math.random()
},
success: function(msg) {
alert("abc");
}, error: function(msg) { alert(msg); }
});
解决上述的问题。
比较郁闷的是,采用原始的方法,在win8火狐浏览器下是有的时候是请求2此,有的时候请求1次,不太理解。若要使有问题,应该都2次或者都是1次,难道是我有些地方理解的不对?win7系统下面同样的浏览器就没有问题。
恳请各位高手们的解答(自己记录下来方便以后查)