Я хотел иметь гиперссылку, которая при нажатии открывается на той же странице, без обновления полной страницы, а не открытия другой ссылки. В моем контроллере я следующая функцияПочему if (Request.IsAjaxRequest) является ложным
public ActionResult PrivacyPolicy()
{
if (Request.IsAjaxRequest())
{
return PartialView();
}
return View();
}
, когда я запустить программу и вставить точку останова в return view();
Я понимаю, что моя программа всегда возвращает view()
вместо PartialView();
вот index.cshtml
код
@section head{
<script type="text/javascript"
src="@Url.Content("~/scripts/AjaxDemo.js")"></script>
}
@Html.ActionLink("Show the Privacy Policy", "PrivacyPolicy", null, new{id="privacyLink"})
<div id="privacy"></div>
в частичном виде PrivacyPolicy У меня всего несколько текстов.
и AjaxDemo.js
выглядит следующим образом
$(document).ready(function() {
$('#privacyLink').click(function (event) {
event.preventDefault();
var url = $(this).attr('href');
$('#privacy').load(url);
});
});
почему моя программа не возвращать частичный вид? или почему он не принимает запрос ajax? Должна ли моя программа открывать ссылку на той же странице индекса (CustomAjax), если включен javascript в моем браузере?
См. Следующие сообщения: http: // stackoverflow.com/вопросы/5164540/why-doesnt-request-isajaxrequest-work-in-asp-net-mvc-3 http://stackoverflow.com/questions/9607164/request-isajaxrequest-never-returns-true-in-mvc3 – gideon
Они действительно не решают мою проблему. Но в любом случае спасибо. – Cybercop