1

プロジェクトで MVC3 を使用しています。

たくさんの DDL、検索ボタン、およびテーブルを含むビューがあります。ユーザーは値を選択して検索ボタンを押すと、ヒットしたすべてのデータがテーブルに表示されます。

これは、検索ボタンをクリックするための私のjqueryコードです:

    $(function () {
        $('#submitfloat').click(function () {
            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
            };

                $.post('@Url.Action("Search", "SearchNKI")', data, function (result) {
                    $("#GoalcardSearchResult tbody").html('');
                    result.forEach(function (goalcard) {
                        $("#GoalcardSearchResult tbody").append(
                            $('<tr/>', {
                                click: function () {
                                    // todo: redirect
                                    alert(goalcard.Id);
                                },
                                html: "<td>" + goalcard.Name + "</td><td>" + goalcard.Customer + "</td><td>" + goalcard.PlannedDate + "</td><td>" + goalcard.CompletedDate + "</td>"
                            }));
                    });
                });
                return false;
        });
    });  

これは私のコントローラーです:

 [HttpPost]
 public JsonResult Search(SearchQueryViewModel model)
 {
     var goalcard = SearchRep.FindGoalCard(model); // My LINQ

     return Json(goalcard.Select(x => new GoalCardViewModel(x)));
 }

すべて正常に動作しますが、Jquery Table Sorter を追加すると:

    <script type="text/javascript">
        $(document).ready(function () {
            $("#GoalcardSearchResult").tablesorter();
        }); 
    </script>

[検索] ボタンをクリックすると、次の Json テキストの壁が表示されます。

![][1]

[1]:

検索ボタンをクリックしてjqueryコードをデバッグすると、テーブルソーターのjqueryコードを追加しても実行されないため、なぜこれが起こるのかわかりません。何が原因かわかる方いますか?

私が知っているのは、Table Sorter を追加すると、ボタン クリック jquery コードの実行がブロックされ、サーバー側に直接ジャンプして json が返されるということだけです。

前もって感謝します!

4

1 に答える 1

0

それは修正されたテーブルソーターコードで、いくつかの小さな変更を加えて実行しました

于 2012-04-17T15:23:18.353 に答える