Javascript 使用tablekit对从AJAX方法返回的表进行排序

Javascript 使用tablekit对从AJAX方法返回的表进行排序,javascript,ajax,grails,tablesorter,Javascript,Ajax,Grails,Tablesorter,我将返回一组来自ajax调用的结果,如下所示 <g:submitToRemote update="updateMe" action="getParams" asynchronus="false" value="Search" name="SearchButton" type="hidden"/> 其中,ajaxResults是一个如下所示的模板: <div class="list"> <h1>Query Results

我将返回一组来自ajax调用的结果,如下所示

<g:submitToRemote update="updateMe" action="getParams" asynchronus="false" value="Search" name="SearchButton" type="hidden"/>
其中,ajaxResults是一个如下所示的模板:

        <div class="list">
            <h1>Query Results</h1>
            <table style="width: 80%; align: center;" class="sortable resizable">
                <thead>
                    <tr>                      
                        <th id="emp_name" class="sortfirstasc">Employee Name</th>
                        <th id="title">Title</th>
                        <th id="labor_grade">Labor Grade</th>
                        <th id="name">Hit</th>
                        <th id="total_exp">Experience (Yrs)</th>                      
                    </tr>
                 </thead>
                 <tbody>
                    <g:each in="${results}" status="i" var="search">
                        <tr>                      
                            <td><g:link controller="employee" action="edit" id="${search.id}">${search.emp_name?.encodeAsHTML()}</g:link></td>                              
                            <td>${search.title?.encodeAsHTML()}</td>
                            <td>${search.labor_grade?.encodeAsHTML()}</td>
                            <td>${search.name?.encodeAsHTML()}</td>
                            <td>${search.total_exp?.encodeAsHTML()}</td>                                                                                 
                        </tr>
                    </g:each>
                </tbody>


            </table>
        </div>
        <div class="paginateButtons">
            <g:paginate total="${Search.count()}" />
        </div>
    </div>

查询结果
员工姓名
标题
劳动等级
打
经验(年)
${search.emp_name?.encodeAsHTML()}
${search.title?.encodeAsHTML()}
${search.labor\u grade?.encodeAsHTML()}
${search.name?.encodeAsHTML()}
${search.total_exp?.encodeAsHTML()}
问题是-此表实际上不可排序。我在试着用餐具

<link rel="stylesheet" type="text/css" media="all" href="../css/tablekit.css" />        
<g:javascript library="tablekit"></g:javascript>


我想问题是我插入了这个,它没有重新呈现给我排序表。我怎样才能强制这样做呢?

大概tablekit会在页面加载时执行一个操作,该操作定位修饰的元素并应用JavaScripts方法

使用
after
参数或
submittomote
标记上的
onComplete
事件调用JavaScript函数以重新应用排序行为

大致如下:

<g:submitToRemote ... after="reapplySortable">

还有js

<script>
  function reapplySortable() {
    TableKit.Sortable.init(table, {options});  
  }
</script>

函数可重新解析(){
init(表,{options});
}

我也在谷歌和其他地方搜索了这个,但什么也没找到。。。 但当我在其他地方广泛搜索后,在tablekit网站的常见问题中找到答案时,真是有趣!! 这里只有两个常见问题,第二个是像我这样的大多数人都在搜索的问题。 有关详细信息。 它说:

强制TableKit重新初始化

希望这有帮助

<script>
  function reapplySortable() {
    TableKit.Sortable.init(table, {options});  
  }
</script>
TableKit.reloadTable(tablename);