Передача переменной из модели частичного представления в родительское представление - ASP.NET
Привет
У меня есть мое частичное представление, которое возвращает только одну переменную из модели. Однако мне нужна переменная для моих событий javascript to action на родительской странице, и я не уверен, как мне это сделать? ниже приведены примеры моего кода, который у меня есть до сих пор.
PartialView -
<div class="wrapper"> <div id="colour" class="center" style="background-color: blue !important;"> </div> <h2 class="txt" style="font-weight: 500;"> @Model.cntCalls/20</h2> <h4 class="txt">Calls made this week </h4> </div>
Фрагмент кода из родительского представления
<h3>Lapsed and Prospect Call Report Summary</h3> @Html.Action("StatusReview") </div> </div> </div> </div> @section scripts{ <script src="https://canvasjs.com/assets/script/canvasjs.min.js"></script> @*<script src="https://canvasjs.com/assets/script/jquery-1.11.1.min.js"></script>*@ <script type="text/javascript"> window.onload = function () { if (qty == 20) { console.log(qty); $('#colour').css('background', 'linear-gradient(60deg, #66bb6a, #43a047)'); $('#colour').css('box-shadow', '0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 10px - 5px rgba(76, 175, 80, 0.4)'); $('#phone').css('color', '#7ed682'); } if (qty >= 15 && qty < 20) { $('#colour').css('background', 'linear-gradient(60deg, #ffa726, #fb8c00)'); $('#colour').css('box-shadow', '0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 10px -5px rgba(255, 152, 0, 0.4)'); $('#phone').css('color', '#ffc474'); } if (qty < 15) { $('#colour').css('background', 'linear-gradient(60deg, #ef5350, #e53935)'); $('#colour').css('box-shadow', '0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 10px -5px rgba(244, 67, 54, 0.4)'); $('#phone').css('color', '#e89999'); } } </script> }
Может кто-то пожалуйста, помогите мне ?
Что я уже пробовал:
испытания и исследования на различных объектах
F-ES Sitecore
Если вам нужны данные в главном представлении, то я был бы склонен делать все, что делает "StatusReview" в вашем основном действии, чтобы ваша модель содержала не только данные, необходимые для "родительской" страницы, но и данные, необходимые для вашего частичного представления. Затем вы можете использовать @Html.Partial вместо @Html.Действие
@Html.Partial("_myView.cshtml", модель)
или передать просто один бит данных, которые вам нужны
@HTML-код.Частичная("_myView.cshtml по -", модель.cntCalls)
Измените директиву @model в частичном представлении, чтобы она соответствовала модели родительской страницы, если вы передадите всю модель (первый пример), или "int", или любой другой тип cntCalls, если вы выберете второй пример.