我在_Layout.cshtml頁面上調用了腳本,而我的Index.cshtml頁面中有部分視圖。因此,在頁面加載時,SignalR腳本在部分視圖上完美工作,在頁面結束時,我做了另一個Ajax請求,並用另一個填充的數據加載部分視圖,並嵌入已經顯示的數據下,然後SignalR不會在新嵌入記錄。腳本在Ajax調用後不能在局部視圖上工作
這是我的索引頁代碼:
<div class="col-md-6">
<div class="profile-body">
<div class="row infinite-scroll">
@Html.Partial("_AlbumRow", Model)
</div>
</div>
</div>
這是我的局部視圖代碼:
@model IEnumerable<SmartKids.Lib.Core.ViewModels.FileMediaAlbumsVM>
@foreach (var item in Model)
{
<div class="widget">
<div class="block rounded">
<img src="@Url.Content(item.ImageUrl)" alt="@item.Title">
<input type="button" data-image-id="@item.imageId" class="btn btn-sm btn-default">Like</input>
</div>
</div>
}
請幫助我如何解決這個問題是要實現AJAX請求後,我不能讓這些SignalR工作。當我將PartialView上的SignalR腳本放在工作區中時,更多的是說,但是它也吸引了每一個Ajax請求,並且再次在頁面上加載SignalR,當我點擊LIKE按鈕時,它會對它後面的函數進行多次調用。 請幫助我解決這個問題,自1周以來我一直堅持這一點。
這裏是signalR代碼:
$(".btn.btn-sm.btn-default").on("click", function() {
var imageId = $(this).attr("data-image-id");
albumClient.server.like(imageId);
});
當你說SingnalR正在處理第一個局部視圖,而不是從ajax得到的視圖,什麼是不工作?你的代碼必須工作? –
SignalR適用於加載頁面加載的PartialView,並且當我通過ajax調用再次追加該部分視圖時,SignalR不起作用,並且我調用Like函數,顯示按鈕單擊時的實時喜歡,這些不適用於通過ajax調用附加的部分視圖。希望現在能清楚 – usman
你能告訴我們singnalR代碼嗎? –