我正在使用nopCommerce 3.40
我处理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));
}
}
}
使用时,此脚本选项卡已创建,但我想从插件中打开自定义视图页面。
请告诉我这个脚本中设置了哪种类型的网址。
提前致谢。
此致 Jatin
答案 0 :(得分: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()));
}
}