2013-05-22 27 views
1

多次我有一個搜索文本框,搜索結果將顯示,我節省了這一結果在DB保存在單一的點擊

一個圖形,但第一次就正確保存,第二次將節省2倍,第三次〜3次,

$('#twitsave1').click(function(el) 
{ 

    if ($("#twitsave1").prop('checked') == true){ 

    //console.log(el.timeStamp); 
    var reId=$(this).next().next().html(); 
    console.log(reId); 
    var key=$('.searchBar input[type="text"]').val(); 
    var timeStamps = el.timeStamp; 
    var loginname = AppAPI.getUser(); 
    var logTypes = 'EVIDENCE'; 
    var dataSources = 'Twitter'; 

    AppAPI.showLoadingBar('Saving'); 

    var data=JSON.stringify({ 
     "login":loginname , 
     "value": reId, 
     "logType": logTypes, 
     "title": 'Twitter - '+key, 
     "dataSource":dataSources, 
     "timeStamp": timeStamps, 
     "searchDateRange":startdate+":"+endDate 
    }); 

    console.log(data); 
    var url=getApplicationRoot() +'/api/dao/logEntry'; 
    $.ajax({ 
    type:"POST" , 
    url:url, 
etc....... 

在執行console.log(數據)我收到3次或4次相同的數據 請幫

+2

嘗試http://api.jquery.com/one/。問題可能與'click'被多次觸發 –

+2

根本原因是您要多次綁定click事件。我建議你糾正這個問題,而不是使用'.one()'' – techfoobar

+0

@prash完成!並且謝謝:) –

回答

1

這個問題可能是因爲點擊被多次觸發。改爲使用.one()。這個處理程序只會執行一次。

2

這大概點擊綁定:$('#twitsave1').click()被點擊處理程序中再次執行。

  • 您是否調用刷新/重繪函數,在此click()綁定再次發生?
  • 點擊是否觸發一個AJAX調用,返回添加到頁面的JavaScript代碼?比檢查該javascript是否不再添加click()綁定。
-1

嘗試將禁用或只讀屬性添加到按鈕。該用戶將無法一次又一次地點擊它。

+0

這不是一個真正的解決方案 –