2011-05-18 88 views
-1

我有一個網頁,上面有鏈接。點擊鏈接,它會在帶有AJAX的<div>內生成一個表格。與表一起,當這個<div>加載時,它會調用一些javascript,以便用戶可以上/下表中的項目。我的問題是,如果用戶點擊相同的鏈接重新生成<div>,它會重新加載一個SECOND JavaScript,因此點擊upvote箭頭實際運行+1次+1次。我不知道你是否需要查看任何特定的代碼,或者是否有一些通用的方法來解決這個問題,但是這裏更清晰地顯示了我的文件設置。Javascript腳本多次加載

mainpage.php與鏈接名爲 「顯示錶」

voting.js

getTable.php

*主頁上點擊 「節目表」,調用getTable.php

* getTable.php調用voting.js,使用戶可以在項目投

*點擊 「顯示錶」 又和另voting.js被稱爲

*現在點擊upvote箭頭通過兩次+1代碼。

一個人可以做什麼?

+1

一個人可以張貼一些'//例如code'一... – pixelbobby 2011-05-18 15:30:40

+0

通過「getTable.php來電voting.js」你的意思是它會插入文件的內容到頁面?或者它是否通過腳本標籤包含文件? – 2011-05-18 15:32:55

+0

@pixelbobby我可以包含代碼,但不確定你想要看到什麼。如果你不需要它,我不想放3頁的代碼。 – sanders4069 2011-05-18 15:38:19

回答

2

您可以在mainpage.php中包含voting.js而不是getTable.php。它會被加載一次,但getTable仍然可以使用它。

+0

我相信工作:)。出於某種原因,我以爲我嘗試過這種方式,但它不起作用,但現在它的工作。謝謝! – sanders4069 2011-05-18 15:40:43

0

我猜(猜測,因爲我們沒有代碼)你將數據附加到div。所以不要附加它,只需寫/覆蓋它。

0

你解釋的方式對我有點困惑,所以我要根據我認爲你遇到的問題做出迴應。

當用戶提交+1投票將其提交它的2倍

你可以使用一個開關,basiclly當他們點擊調用,如果你的開關上做到這一點,如果不將其設置爲上運行該代碼

if(sitchMe == "on"){ 
     //dont run the code 
    } 
    else{ 
     //run it 
     switch = "on" 
    }