点击此链接
<a id="c2c" href="#" class='test' style="margin-left:300px;"><img src="img.png" height="400" width="480" alt="Click Here"></a>
我已经写了这段代码
$('#c2c').click(function(event){
event.preventDefault();
window.location.href = "http://google.com";
$.get("test.php?testnum=121212121",function(data){
if(data == "no") window.location.href = "failure.html";
else {
window.location.href = "http://www.abc.com/get_data.php?data="+data;
}
});
点击此链接,我就是
1 - 预防默认行为
2 - 设置href位置
3 - 向某个参与者发送带有参数的获取请求
它们在FireFox中运行良好,但是当我在Chrome / opera中使用此代码时,它不是3- sending the get request
,在错误控制台中我可以看到浏览器显示“请求已中止”。
任何帮助?
注意:据我调查,这是由于event.preventDefault();
没有工作,如果我是对的那么我怎样才能使这个工作或者解决方案是什么?
答案 0 :(得分:1)
你必须删除location.href:
('#c2c').click(function(event){
event.preventDefault();
// window.location.href = "http://google.com"; remove this line or move it somewhere in the response callback of your ajax request
$.get("test.php?testnum=121212121",function(data){
if(data == "no") {
window.location.href = "failure.html";
} else {
window.location.href = "http://www.abc.com/get_data.php?data="+data;
}
});
Chrome会中止ajax请求,因为window.location.href =“http://google.com”;使浏览器加载google.com。 我不能给你一个完整的代码示例,因为我不确定你想要实现的目标
答案 1 :(得分:-4)
更改锚点href
href="#"
到
href="javascript:void(0);"