2012-04-20 50 views
4

我的項目中有搜索字段,它使用$.post來獲取搜索查詢的結果。 我的問題:當用戶點擊搜索按鈕時,它能正常工作,但是當用戶再次點擊搜索按鈕,然後點擊我的thead列時,jquery分類器將與之前的表中的搜索顯示重複。我的表格使用Jquery Table Sorter獲取重複的行

我該如何解決這個問題,以便我的分揀機功能不重複?

這是用於搜索按鈕點擊的Jquery代碼。

 $(function() { 
      $('#submitfloat').click(function() { 
       $('#loading').show(); 
       setTimeout(function() { $("#loading").hide(); }, 800); 
       var SubjectTypes = $('#SubjectTypes').val(); 
       var Teams = $('#Teams').val(); 
       var Companies = $('#Companies').val(); 
       var Consultants = $('#Consultants').val(); 
       var PlannedDates = $('#PlannedDates').val(); 
       var CompletedDates = $('#CompletedDates').val(); 
       var DateTypes = $('#DateTypes').val(); 
       var data = { 
        Subjectypes: SubjectTypes, 
        Companies: Companies, 
        Teams: Teams, 
        Consultants: Consultants, 
        PlannedDates: PlannedDates, 
        CompletedDates: CompletedDates, 
        DateTypes: DateTypes 
       }; 

       var fromDate = $('#PlannedDates').val(); 
       var endDate = $('#CompletedDates').val(); 
       if (Date.parse(fromDate) > Date.parse(endDate)) { 
        jAlert("End date must be later than start date", "Warning"); 
        return false; 
       } else { 
        $('#GoalcardSearchResult tbody').hide(); 
        setTimeout(function() { $("#GoalcardSearchResult tbody").show(); }, 800); 
        $.post('@Url.Action("Search", "SearchNKI")', data, function (result) { 

         $("#GoalcardSearchResult tbody").empty(); 


         result.forEach(function (goalcard) { 

          $("#GoalcardSearchResult tbody").append(
           $('<tr/>', { 
            click: function() { 
             id = goalcard.Id; 
             var url = '@Url.Action("AnswerForm", "AnswerNKI", new { id = "__id__"})'; 
             window.location.href = url.replace('__id__', id); 


            }, 

            html: "<td>" + goalcard.Name + "</td><td>" + goalcard.Customer + "</td><td>" + goalcard.PlannedDate + "</td><td>" + goalcard.CompletedDate + "</td>" 
           })); 
         }); 
         $("#GoalcardSearchResult").tablesorter(); 
        }); 
        return false; 
       } 
      }); 
     }); 

您的幫助表示感謝,提前致謝!

回答

5

我猜測用戶點擊排序按鈕之前,tablesorter已經被初始化。在這種情況下,將這段代碼:

$("#GoalcardSearchResult").tablesorter(); 

與此:

$("#GoalcardSearchResult").trigger('update'); 
相關問題