だから、私が作成しました私は追加のappSettingsセクションにWeb.configファイルで
At BoundleConfig.cs file:
bundles.Add(new ScriptBundle("~/bundles/otf").Include(
"~/Scripts/jquery-{version}.js",
"~/Scripts/jquery-ui-{version}.js",
"~/Scripts/jquery.unobtrusive-ajax.min.js",
"~/Scripts/jquery.validate*"
));
:ビデオで示したが、それは動作していない、私は考え理由を持っていないし、このために探して時間を費やし、ここに私のコードがあるとまったく同じ例:
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
そしてここに私達は行く:
public ActionResult Review(string searchString)
{
var model = _repository.StartDs;
if (!String.IsNullOrEmpty(searchString))
{
model = model.Where(x => x.FirstName.Contains(searchString));
}
if (Request.IsAjaxRequest())
{
return PartialView("_Review", model);
}
return View(model);
}
Review.cshtmlファイル:
@model IEnumerable<nauka.Models.StartData>
@using(Ajax.BeginForm(
new AjaxOptions
{
HttpMethod = "get",
InsertionMode = InsertionMode.Replace,
UpdateTargetId = "girlsList"
}))
{
<input type="search" name="searchString"/>
<input type="submit" value="Znajdź" />
}
@Html.Partial("_Review", Model)
_Review.cshtmlファイル:
@model IEnumerable<nauka.Models.StartData>
<div id="girlsList">
<table style="width:100%">
<tr>
<th>ID</th>
<th>Imię</th>
<th>Nazwisko</th>
<th>Wzrost</th>
<th>Rozmiar</th>
<th>Akcje</th>
</tr>
@foreach (var item in Model)
{
<tr>
<td>@item.Id</td>
<td>@item.FirstName</td>
<td>@item.LastName</td>
<td>@item.Height</td>
<td>@item.TitsSize</td>
<td>@Html.ActionLink("Usuń", "Delete", new { id = item.Id })</td>
</tr>
}
</table>
</div>
私はこの断片では、それをチェックします私の行動方法:
if (Request.IsAjaxRequest())
{
return PartialView("_Review", model);
}
これは決して実行されません。つまり、要求はAjaxRequestとして認識されません。その理由は何ですか?私は、この行を編集したので、それが私のインデックスサイトに私をリダイレクトshloud
return View("Index");
を貼り付けたが、それはので、私はAjaxRequestが実行されていないことを証明していませんでした。私はここで欠けているものは分かりませんが、私はビデオのように正確に示しました。 autmaticallyすべてのビューページに追加された私の_Layout.cshtmlファイルの上
:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>@ViewBag.Title - My ASP.NET Application</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
</head>
<body>
<div class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
@Html.ActionLink("Application name", "Index", "Home", new { area = "" }, new { @class = "navbar-brand" })
</div>
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li>@Html.ActionLink("Home", "Index", "Home")</li>
<li>@Html.ActionLink("About", "About", "Home")</li>
<li>@Html.ActionLink("Contact", "Contact", "Home")</li>
<li>@Html.ActionLink("Dodaj", "Add", "Home")</li>
<li>@Html.ActionLink("Przegladaj", "Review", "Home")</li>
<li>@Html.ActionLink("Filtruj", "FilterTest", "Home")</li>
</ul>
@Html.Partial("_LoginPartial")
</div>
</div>
</div>
<div class="container body-content">
@RenderBody()
<hr />
<footer>
<p>© @DateTime.Now.Year - My ASP.NET Application</p>
</footer>
</div>
@Scripts.Render("~/bundles/otf")
@RenderSection("scripts", required: false)
</body>
</html>
'if(Request.IsAjaxRequest())の中にコードを置かないと、通常のリダイレクトを行うことになります。ビューにスクリプトが正しくレンダリングされていることを確認します(バンドルを表示していますが、ビューに表示する場所が表示されていません) –
_Layout.cshtmlファイルの末尾に@ Scripts.Render( "〜/ bundles/otf ") –
すべてのjquery refrencesファイルをかみそりページに追加しますか? –