or
router.navigate(
'/search + '
?q=
' + encodeURIComponent($('
#search-input').value()));
router.route(
'/search'
,
function
() {
applicationLayout.showIn(
'#search-view'
, searchView);
$(
'#search-results'
).html(
'<gcse:searchresults-only></gcse:searchresults-only>'
);
var
script = (document.location.protocol ===
'https:'
?
'https:'
:
'http:'
) +
'//www.google.com/cse/cse.js?cx=003237445845897440411%3Atuurehzakfu'
;
$.getScript(script);
});
I am building a TabStrip where the content of the tabs is rendered from partial views. Each tab has a grid with its own datasource. I assumed that the content for each tab would not be loaded until the tab is clicked for the first time, but what I am experiencing is that all the data for all the tabs is being hit when the TabStrip is initially loaded. Am I missing something?
TabStrip declaration:
@(Html.Kendo().TabStrip()
.Name("AssetDetails")
.Items(tabstrip =>
{
tabstrip.Add().Text("Asset Review")
.Selected(true)
.Content(@Html.Partial("_AssetReview", Model).ToHtmlString());
tabstrip.Add().Text("Closing")
.Content(@Html.Partial("_Closing").ToHtmlString());
tabstrip.Add().Text("Occupancy")
.Content(@Html.Partial("_Occupancy").ToHtmlString());
tabstrip.Add().Text("Eviction")
.Content(@Html.Partial("_Eviction").ToHtmlString());
tabstrip.Add().Text("Property Management")
.Content(@Html.Partial("_PropertyManagement").ToHtmlString());
tabstrip.Add().Text("Purchase Order")
.Content(@Html.Partial("_PurchaseOrder").ToHtmlString());
tabstrip.Add().Text("Marketing")
.Content(@Html.Partial("_Marketing").ToHtmlString());
tabstrip.Add().Text("Field Inspection")
.Content(@Html.Partial("_FieldInspection").ToHtmlString());
tabstrip.Add().Text("Property Inspection")
.Content(@Html.Partial("_PropertyInspection").ToHtmlString());
})
)
Closing partial view:
@(Html.Kendo().Grid<
Atlas.Core.Objects.PortalAssetClosing
>()
.Name("gridClosing")
.Columns(columns =>
{
columns.Bound(p => p.ClosingStatusName);
columns.Bound(p => p.BuyerName);
columns.Bound(p => p.ContactName);
columns.Bound(p => p.LenderContactName);
columns.Bound(p => p.AcceptanceDate).Title("Acceptance Date").Width(100).Format("{0:MM/dd/yyyy}");
columns.Bound(p => p.ActualCloseDate).Title("Close Date").Width(100).Format("{0:MM/dd/yyyy}");
columns.Bound(p => p.CancelledDate).Title("Canceled Date").Width(100).Format("{0:MM/dd/yyyy}");
columns.Bound(p => p.EstimatedCloseDate).Title("Estimated Close Date").Width(100).Format("{0:MM/dd/yyyy}");
})
.Sortable()
.Pageable(x => x.PageSizes(new[] { 25, 50, 100 }))
.Scrollable()
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(5)
.Read(read => read.Action("GetData_Read", "AssetClosing").Data("additionalData"))
)
)
When the tabstrip is rendered for the first time, the selected tab is the Asset Review tab, but the datasource for the Closing tab is also being hit.
I don't want the closing tab grid to hit the database until the tab is selected for the first time.
How do I set up the TabStrip to be LoadOnDemand?