Найти URL страницы содержимого в MVC 4, используя jQuery / Javascript
У меня есть приложение MVC4, которое содержит представления и частичные представления.
1) Просмотр страниц (Home.cshtml, Index.cshtml)
2) PartialViews (View1.cshtml, View2.cshtml, View3.cshtml)
3) У меня есть 3 кнопки (Button1,Button2,Button3) на странице www.example.com/Home
Кнопки
<button id="btn1" type="button" onclick="btn1Click(this);"> View1 </button>
<button id="btn2" type="button" onclick="btn2Click(this);"> View1 </button>
<button id="btn3" type="button" onclick="btn3Click(this);"> View1 </button>
При нажатии на эти кнопки я отображаю соответствующие частичные виды на домашней странице (раздел контента). Я написал этот код в функции Javascript (btn1Click (кнопка)) в файле.js. Если у нас есть больше частичных представлений для отображения на содержимом домашней страницы, то как мы можем отслеживать путь (путь к файлу нашего проекта) этих частичных представлений с помощью jQuery/Javascript. Если мы используем
Window.location.href
мы получим основной URL (www.example.com/Home page), но когда пользователь нажимает эти кнопки (button1/button2/button3), мне нужно найти путь к частичному представлению, кроме пути к проекту (ProjectName/PartilaViews/View1). cshtml) или (ProjectName/PartilaViews/View2.cshtml) или (ProjectName/PartilaViews/View3.cshtml) с использованием jQuery/Javascript.
Я не хочу менять функциональность / процедуру (процесс выше),
2 ответа
Попробуй это:
window.location.href='@Url.Action("action name", "controller name")'
и actionresult от вашего контроллера вернет частичное представление.
-------------------------------------------------- -----------ИЛИ ЖЕ-------------------------------------- ----------------------------
var partial = '@Html.Partial("Partial view name")'
variable partial
вернет HTML из частичного просмотра.
Я получил ответ на мой вопрос. Используя приведенный ниже код, вы можете получить URL-адрес проекта. но вы получите все URL-адреса, которые запрашиваются на вашем веб-сайте, но вам нужно разделить эти URL-адреса в соответствии с вашими требованиями.
$(document).ajaxComplete(function (event, xhr, settings) {
if (settings.type == "GET")
{
var vGETUrl = settings.url;
alert(vGETUrl);
}
});
Приведенный выше код захватывает запросы "GET" с вашего сайта. Вы можете перейти по ссылке ниже для получения более подробной информации