MVC Table sorting - PullRequest
       38

MVC Table sorting

2 голосов
/ 14 октября 2011

Я сейчас играю с плагином Tablesorter jQuery на одном из сайтов, над которым я работаю. Это кажется довольно простым, но по какой-то причине заголовки не сортируются. Нажатие на них даже не производит никакого видимого ответа (курсор не изменяется). Я подозреваю, что это может быть как-то связано с тем, что таблица является динамической в ​​том смысле, что она заполняется данными, извлекаемыми из таблицы базы данных (правка: подтвердил, что это не проблема, путем тестирования с использованием статических данных, введенных вручную). Другая возможность заключается в том, что мой код jQuery находится не в том месте или есть проблема с моей ссылкой.

Есть идеи?

Кстати, проект выполняется в MVC.

Просмотр страницы. Исходный результат:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head id="Head1"><title>



    Execution History     



</title><link href="../Content/Site.css" rel="stylesheet" type="text/css" />

    <script type="text/javascript" src="~/Scripts/jquery-1.4.1.js"></script>

    <script type="text/javascript" src="~/Scripts/jquery.tablesorter.js"></script>



    <script type="text/javascript">

        $(document).ready(function () {

            $("table").tablesorter({

                headers: {

                    8: {

                        sorter: false

                    },



                    9: {

                        sorter: false

                    }

                }

            });

        });

    </script>


</head>



<body>

    <div class="page">             

        <div id="main">



    <h2>Execution History</h2>



    <table id="myTable" class="tablesorter">

        <thead>

            <tr>

                <th>Run ID</th>

                <th>Date Ran</th>

                <th>Ran By</th>

                <th>Run Time</th>

                <th>Result</th>


            </tr> 

        </thead>



        <tbody>



                <tr>

                    <td>1</td>

                    <td>7/25/2011 11:25:01 AM</td>

                    <td>Laura</td>

                    <td>145.49849999696</td>

                    <td>PASS</td>

                </tr>



                <tr>

                    <td>2</td>

                    <td>8/3/2011 6:23:01 PM</td>

                    <td>Laura</td>

                    <td>140.616000004113</td>

                    <td>PASS</td>

                </tr>



                <tr>

                    <td>3</td>

                    <td>8/3/2011 6:26:00 PM</td>

                    <td>Laura</td>

                    <td>141.592500001192</td>

                    <td>PASS</td>

                </tr>


                <tr>

                    <td>4</td>

                    <td>8/4/2011 8:04:00 PM</td>

                    <td>Kevin</td>

                    <td>260.725500002503</td>

                    <td>FAIL</td>

                </tr>


                <tr>

                    <td>5</td>

                    <td>10/5/2011 4:05:50 PM</td>

                    <td>Kevin</td>

                    <td>2749796.658</td>

                    <td>PASS</td>

                </tr>



                <tr>

                    <td>6</td>

                    <td>10/5/2011 5:31:18 PM</td>

                    <td>Kevin</td>

                    <td>2777489.2215</td>

                    <td>PASS</td>

                </tr>



        </tbody>

    </table> 





                <div id="footer"></div>

        </div>

    </div>

</body>

</html>

1 Ответ

1 голос
/ 28 октября 2011

Нашел решение. Это действительно была проблема со ссылкой на файл. Код отлично работает на локальном хосте, но я делаю большую часть тестирования на IIS, так как это развернутый сайт. Таким образом, для IIS требуется сопоставление для фактического поиска ссылочных сценариев jquery. Url.Content делает именно это.

<script src="<%=Url.Content("~/Scripts/jquery-1.4.1.js") %>" type="text/javascript"></script>

...