我有部分View AssetList加载了viewmodel usning knockout.js
<td>
<div class="left CursorP ellipsis" style="float: left;" data-bind="text:
Name, attr: { 'title': Name },click:$root.eventHandlers.ViewDetail"></div>
</td>
<td data-bind="text: Description"></td>
<td data-bind="text: Source"></td>
<td data-bind="text: CapturedBy"></td>
<td data-bind="text: Status"></td>
<td data-bind="text: LastAccessedBy"></td>
在.JS文件中,我需要在点击名称链接
时打开_AssetDetail部分视图this.ViewDetail = function(){
self.SelectedAssetTodelete.removeAll();
self.SelectedAssetTodelete.push(this);
window.location = "#assetId=" + this.Id; --This is opening the Partial view correctly but in the same tab
};
链接[assetDetailPage]是安全/内容/目录/详细信息?assetId =“+ this.Id
而不是相同的窗口[window.location],我们如何在上面的ViewDetail函数中使用此链接打开模态弹出窗口?
答案 0 :(得分:0)
您可以使用iframe
标记加载外部内容。
<iframe width="300" height="300"
data-bind="attr: { src: 'Secure/Content/Catalog/Detail?assetId=' + Id }"></iframe>
我不知道您的模型结构,您可能需要将Id
替换为Id()
或$parent.Id()
。
答案 1 :(得分:0)
你可以使用jquery
这样做<iframe width="300" height="300" id="model"
data-bind="
attr: { src: $root.LoadModel(Id) }
"></iframe>
self.LoadModel = function(id){
var location = 'Secure/Content/Catalog/Detail?assetId='+id
$('#model').load(location)
return location
}
答案 2 :(得分:0)