2014-09-22 21 views
1

我正在使用nopCommerce 3.40如何處理AdminTabStripCreated事件並使用插件中的內容?

我正在處理AdminTabStripCreated事件以從插件添加新選項卡。

我的代碼如下所示:

public class AdminTabStripCreatedEventConsumer : IConsumer<AdminTabStripCreated> 
    { 
     public void HandleEvent(AdminTabStripCreated eventMessage) 
     { 

if (eventMessage.TabStripName == "customer-edit") 
     { 
     string URL="Nop.Plugin.UI.CustomerTabs.Views.test.customeradmin" 
       string script = @"<style type=""text/css""> 
           .k-link { 
            font-weight: bold; 
           } 
           </style> 
           <script language=""javascript"" type=""text/javascript""> 
           $(document).ready(function() { 
           var kTabs = $('#customer-edit').data('kendoTabStrip'); 
           kTabs.append({ text: ""Tab Name"", contentUrl: ""**URL**"" }); 
           }); 
           </script>"; 
       eventMessage.BlocksToRender.Add(MvcHtmlString.Create(script)); 
      } 
     } 
    } 

當使用這個腳本選項卡中創建,但我想從插件打開我的自定義視圖頁面。

請給我想一下這個腳本中設置了哪種類型的URL。

在此先感謝。

問候, Jatin

回答

6

我得到解決。

代碼如下所示:

public void HandleEvent(AdminTabStripCreated eventMessage) 
{ 
    if (eventMessage.TabStripName == "customer-edit") 
    { 
string url = "/Controller/action"; 
       string tabName = "testtab"; 
       var sb = new StringBuilder(); 

       sb.Append("<script language=\"javascript\" type=\"text/javascript\">"); 
       sb.Append(Environment.NewLine); 
       sb.Append("$(document).ready(function() {"); 
       sb.Append(Environment.NewLine); 
       sb.Append("var kTabs = $('#customer-edit').data('kendoTabStrip');"); 
       sb.Append(Environment.NewLine); 
       sb.Append(" kTabs.append({ text: \"" + tabName + "\", contentUrl: \"" + url + "\" });"); 
       sb.Append(Environment.NewLine); 
       sb.Append("});"); 
       sb.Append(Environment.NewLine); 
       sb.Append("</script>"); 
       sb.Append(Environment.NewLine); 
       eventMessage.BlocksToRender.Add(MvcHtmlString.Create(sb.ToString())); 

    } 
} 
相關問題