0

ボタンを使用してフォームを送信しようとしましたが、すべてが機能しました(コントローラーが呼び出され、POSTが正常に機能しました)。次に、そのすぐ横にチェックボックスを追加すると、クリックするとチェックボックスのみが表示された空白のページが返されます。私が使用している:

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

私のビューの一部(部分ビューを使用しています):
Index.cshtml:

<td id="ProjectFieldset">
     @Html.Partial("_ProjectSelect") 
</td>

_ProjectSelect.cshtml:

@using (Ajax.BeginForm("test", "Project", new AjaxOptions() { InsertionMode = InsertionMode.Replace, UpdateTargetId = "ProjectFieldset" }))
         {
        <td>
            @Html.CheckBox("ckboxItem", true , new {onchange="this.form.submit();"})
            <input type="submit" value="allo" id="allo" />
        </td>
         }

コントローラ:

[AcceptVerbs(HttpVerbs.Post)]
    public ActionResult test(bool ckboxItem)
    {
        ViewData["projects"] = db.Projects;
        return PartialView("_ProjectSelect");
    }

これは私のコードのほんの一部です。HTMLエラーはありません。そのため、チェックボックスとボタンが適切に表示され、ボタンを押すとすべてが機能します。チェックボックスをクリックするとコントローラーに入りますが、その後は空白のページが表示されます。ここで助けはありますか?Thks。

4

1 に答える 1

1

交換:

<script src="@Url.Content("~/Scripts/jquery.unobtrusiveajax.js")"type="text/javascript"></script> 

と:

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

jquery.unobtrusive-ajax.jsスクリプト名にあるタイプミスに注意してください。

またjquery 1.4.4、もう少し古いです。より新しいバージョンを使用することをお勧めします。

于 2012-07-19T06:04:21.980 に答える