2010-03-08 173 views
1

我做了一個模塊,以在我的網站上使用jQuery/ajax腳本。爲此我使用了網站和其他網站上的例子。該腳本在IE中工作(爲了改變它在那裏工作),但我不能在FF或Safari瀏覽器中工作。嘗試了很多東西,但不知何故,它從來沒有執行updatecounter函數 我不是一個JavaScript程序員,所以不知道在哪裏看。也許有一些誰知道我做錯了什麼 試圖jQuery ajax調用不工作在FF和Safari瀏覽器在IE中工作

if (Drupal.jsEnabled) { 
$(document).ready(function(content) { 
$('a.download').click(function() { 
// This function will get exceuted after the ajax request is completed successfully 
var updatecounter = function(data) { 
alert (data.counter); // only in IE this is displayed not in FF or Safari 
} 
alert(this.href); // this works in all browsers 
var urlget = "/counter/get」; 
$.ajax({ 
type: 'GET', 
url: urlget, 
success: updatecounter, // The js function that will be called upon success request 
dataType: 'json', //define the type of data that is going to get back from the server 
data: 'js=1' //Pass a key/value pair 
}); 
//return false; // return false so the navigation stops here and not continue to the page in the link .. This puzzles me also. If I put it in the program stops and does not continue 
}); 
}); 
} 

奇怪的是,如果我改變它:

if (Drupal.jsEnabled) { 
$(document).ready(function(content) { 
$('a.download').click(function() { 
// This function will get exceuted after the ajax request is completed successfully 
var updatecounter = function(data) { 
alert (data.counter); // only in IE this is displayed not in FF or Safari 
} 
var fout = function(stat, statext) { 
alert (stat.readyState); 
alert (statext); 
} 

alert(this.href); // this works in all browsers 
var urlget = "/counter/get」; 
$.ajax({ 
type: 'GET', 
url: urlget, 
success: updatecounter, // The js function that will be called upon success request 
error: fout , // calls when error 
dataType: 'json', //define the type of data that is going to get back from the server 
data: 'js=1' //Pass a key/value pair 

}); 
//return false; // return false so the navigation stops here and not continue to the page in the link .. This puzzles me also. If I put it in the program stops and does not continue 
}); 
}); 
} 

它總是轉到FOUT並顯示錯誤代碼4和文字錯誤。因此,Ajax調用工作,但給我總是和錯誤(僅在FF和Safari不是IE)

我想在這幾個小時也許有人可以幫助我在這裏 感謝

+0

你有沒有想過這個? – 2010-04-03 06:46:11

+0

你從'fout'警報中得到的錯誤是什麼? – 2010-07-13 19:21:43

回答

1

你複製 - 將你網頁上的代碼粘貼到問題中?因爲如果是這樣,它使用一個(看中接近引號),而不是"(直引號)在這條線:

var urlget = "/counter/get」; 

我不會感到驚訝,如果這是問題的一部分,這不是一個有效的方式來終止字符串(但是,使用一些鍵盤佈局很容易犯一個錯誤)。

+0

檢查它,甚至將其更改爲單引號,但沒有區別。 這似乎與允許來自域名的腳本有關,因爲它在IE和Opera下工作,而不是Firefox和Safari瀏覽器。但不知道如何檢查並更改它。 – Erald 2010-03-10 17:40:20

+0

@Erald:很奇怪。我沒有看到任何其他明顯的問題,不管問題是什麼,我不認爲它在引用的代碼中 - 頁面上的其他位置必定有一個奇怪的副作用。祝你好運。 – 2010-03-10 19:49:08

0

我剛剛有這個問題 - 我的解決方案是在變量名稱。 Safari對我使用'text'作爲變量名(我知道這很蠢),但它在FF中給出了一個錯誤。

我發佈這不是因爲我認爲這一定是上述問題的解決方案,但只是在有人發現此線程並正在犯類似錯誤。

相關問題