0

我有一个带有左窗格和右窗格的剑道 UI 拆分器。在左侧窗格中,我有 kendoui 面板栏,其中包含指向不同报告的链接。现在单击任何链接,我试图通过使用 iframe 在右窗格中打开报告页面。但由于某种原因,报告页面正在新窗口中打开。

来自面板栏中的链接之一的示例锚标记

 <a class="right" target="reportDisplayPane" title="MyTitle" href="reports/params.aspx?rt=Basic Reports&rn=My Report">My Report</a>

带有 Kendo Ui 拆分器、Kendo Ui 面板栏和 I 框架的 MVC 查看代码。

@(Html.Kendo().Splitter()  
      .Name("splitter")           
      .Orientation(Kendo.Mvc.UI.SplitterOrientation.Horizontal)
      .Panes(horizontalPanes =>
      {
          horizontalPanes.Add()
              .Size("20%")
              .HtmlAttributes(new { id = "left-pane", style = "height:100%;" })    
              .Collapsible(true)
              .Content(@<div class="pane-content">
                          <div id="navigation">    
                             @(Html.Kendo().PanelBar()
                                .Name("panelbar")
                                   .ExpandMode(Kendo.Mvc.UI.PanelBarExpandMode.Multiple)
                                   .HtmlAttributes(new { style = "width:100%;height:100%;" })
                                   .Items(panelbar =>
                                     {
                                        foreach (var category in Model.MyModel.Categories)
                                         {
                                           panelbar.Add().Text(category)
                                           .Items(reports =>
                                            {
                                             foreach (var report in Model.MyModel.Reports)
                                              {
                                                if (report.Category.Equals(category))
                                                 {
                                                    reports.Add().Text(report.NavigateURL).Encoded(false);   
                                                 }
                                               }
                                             });
                                         }
                                    })
                              )
                          </div>
                       </div>                      
                    );

          horizontalPanes.Add()
              .Size("80%")              
              .HtmlAttributes(new { id = "right-pane",style = "height:100%;"})
              .Collapsible(false)
              .Content(@<div class="pane-content">
                            <iframe id="reportDisplayPane" ></iframe> 

                        </div>);
      })



 Please suggest on what might be wrong here.
4

1 回答 1

1

使用下面实现它。

var onSelect = function (e) {          
            var iframeUrl = 'reports/maypage.aspx?rt=Myreports&rn=' + e.item.innerText;   
            $('#reportDisplayPane').attr('src', iframeUrl);
        };

        var panelBar = $("#panelbar").kendoPanelBar({
            select: onSelect
        }); 
于 2013-06-24T13:30:32.483 回答