2016-08-12 270 views
-1

我遇到了一個奇怪的問題。 我有一個在點擊鏈接時執行的功能。該函數通過ajax提供警報和數據庫更新。 我剛剛注意到,如果我第一次點擊鏈接後,警報會出現好幾次。當我點擊它的時候,它會被執行2次,當我點擊3次時,它會被執行4次。 這是我的代碼。Javascript單擊腳本首次執行後多次運行

$("a.action").on('click', function(e){ 

       if(confirm('Are you sure you want to set Action to 1?')){ 



        var $index = $(this).closest('tr').index(); 
        var ids = <?php echo json_encode($ids); ?>; 

        table.row($(this).closest('tr')).remove().draw(); 
        console.log("Row deleted"); 


        //Set $action = 1; 
        var xmlhttp = new XMLHttpRequest(); 
        xmlhttp.onreadystatechange = function() { 
         if (xmlhttp.readyState == 4 && xmlhttp.status == 200) 
         { 
          console.log("Action set to 1"); 
         } 
        }; 
        xmlhttp.open("GET", "db_update.php?id="+ids[$index], true); 
        xmlhttp.send(); 

       } 
       return true; 

      }); 
+0

後您的html代碼 – jonju

+1

你爲什麼不使用jQuery的Ajax,當你已經在使用jQuery的? –

+0

我的猜測是你在這個事件處理程序中有更多的代碼。你能分享嗎? – trincot

回答