ajax局部视图中的Bootstrap-Table无效

时间:2016-08-31 16:12:16

标签: twitter-bootstrap bootstrap-table

我正在开发一个带有aspnet核心和引导程序的Web应用程序,我需要对名为“mytable.cshtml”的部分视图中托管的简单表进行排序。在Ajax调用之后,必须以部分方式加载部分视图。

我正在使用bootstrap-table插件按以下方式对表进行排序:

<table id="table" data-toggle="table" class="table">
        <thead>
            <tr>
                <th data-sortable="true">column 1</th>
                <th data-sortable="true">column 2</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>aaa</td>
                <td>111</td>
            </tr>
            <tr>
                <td>bbb</td>
                <td>222</td>
            </tr>
            <tr>
                <td>ccc</td>
                <td>333</td>
            </tr>
        </tbody>
    </table>

首先,我测试了一切正常,以这种方式加载局部视图

@Html.Partial("mytable");

视图已加载,表格格式正确,列标题包含用于排序的图标,单击标题可对内容进行排序。

现在,我尝试在单击链接时使用Ajax调用加载局部视图:

<a href=@Url.Action("GetMyTable"})  onclick="LoadMyTable()"/>
//LoadMyTable() script omitted ...

在正确加载部分视图之前,表格已显示并已格式化,但无法对列进行排序:未显示排序图标,并且单击列标题没有任何反应

有人经历过这种行为,可以建议我一些解决方法吗? 作为替代方案,任何遇到类似情况的人都可以建议我如何继续 - 最终使用不同的插件吗?

非常感谢任何提示

1 个答案:

答案 0 :(得分:1)

您可以使用JavaScript。首先请确保您已将id="table"添加到表格标记中,例如

<table id="table" class='table' data-toggle="table">

第二次在部分文件的末尾添加JS(可能这不严格):

<script type="text/javascript">
     $('#table').bootstrapTable();
</script>