JQuery Widget 不喜欢在运行时添加的控件?



我已经使用 jquery Tabs 小部件创建了一个页面,如果我在 aspx 页面上创建控件,它的工作方式就像教程一样。但是,我现在需要从代码生成这些控件(Div/UL/LI(,以便我可以在单个页面上多次复制此控件(未知数字(......但是CSS似乎不适用,并且小部件不起作用。

页.aspx:

<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>

页.aspx.cs:

protected void Page_Load(object sender, EventArgs e)
{
accordion.ClientIDMode = ClientIDMode.Static;

var divTabs = new HtmlGenericControl("div");            
divTabs.ID = "tabs";
divTabs.ClientIDMode = ClientIDMode.Static;
accordion.Controls.Add(divTabs);
var ulMain = new HtmlGenericControl("ul");
divTabs.Controls.Add(ulMain);
var il1 = new HtmlGenericControl("il");           
il1.InnerHtml = "<a href="#tabs-1">Tab 1</a>";
ulMain.Controls.Add(il1);
var il2 = new HtmlGenericControl("il");            
il2.InnerHtml = "<a href="#tabs-2">Tab 2</a>";
ulMain.Controls.Add(il2);
var divTab1 = new HtmlGenericControl("div");
divTab1.ID = "tabs-1";
divTab1.ClientIDMode = ClientIDMode.Static;
divTabs.Controls.Add(divTab1);
var parTag = new HtmlGenericControl("p");            
divTab1.Controls.Add(parTag);
var divTab2 = new HtmlGenericControl("div");
divTab2.ID = "tabs-2";
divTab2.ClientIDMode = ClientIDMode.Static;
divTabs.Controls.Add(divTab2);
var parTag2 = new HtmlGenericControl("p");
parTag2.ID = "parTab2";
divTab2.Controls.Add(parTag2);
Label lbl1 = new Label();
Label lbl2 = new Label();
lbl1.Text = "HERE IS SECTION 1";
lbl2.Text = "HERE IS SECTION 2";
parTag.Controls.Add(lbl1);
parTag2.Controls.Add(lbl2);
}

当我在 aspx 文件中设置它时,选项卡小部件可以完美运行。 当我在代码中执行此操作时,选项卡文本没有格式,并且我同时看到两个选项卡中的内容。我确定这只是我犯的一个菜鸟错误,所以我想这里有人会知道我是如何搞砸的!!

我不知道你是否必须更改 var il1 = new HtmlGenericControl("il"(;到 var il1 = new HtmlGenericControl("li"(;

最新更新