如何在C#中动态创建DIV,向其添加子元素,然后隐藏DIV(及其上的所有内容)?

时间:2015-06-17 20:52:21

标签: c# jquery html sharepoint-2010

我找到了一种方法可以将这只猫从this剥离,导致this,但我想知道将所有“可滑动的”元素放在上面是否更好div,然后向上滑动那个div?

更具体地说,我正在为Sharepoint网页/ Web部件动态创建C#中的控件。我有条件地需要隐藏或滑动元素的“部分”。

理论上(我认为),我可以像这样创建一个DIV(Panel)(在C#中,在我的* .ascx.cs文件中):

Panel panelSec2 = new Panel(); // DIV
panelSec2.ID = "panelSection2";

...然后立即创建控件,如下所示:

boxRequesterName = new TextBox
{
    CssClass = "dplatypus-webform-field-input"
};

...然后将这些控件添加到DIV / Panel:

panelSec2.Controls.Add(boxRequesterName);
. . .

以这种方式(大概/理论上),我可以在相应的* .ascx文件的jQuery中隐藏/滑动面板:

$(document).on("change", '[id$=ckbxPaymentForSelf]', function () {
    if (this.checked) {
        var $panelSection2 = $('[id$=panelSection2]');
        $(panelSection2).slideUp();
    }
});

...而不必担心为hidation / slidation指定单独的控件。

我是对的吗?或者我的理论有什么不对吗?

1 个答案:

答案 0 :(得分:1)

我能想到你的逻辑没有错。

有一件事可能会让JS方面的事情变得更简单,但将ClientIDMode设置为Static。然后,您可以使用更直接的'#ControlID'语法,而不是使用您现在拥有的语法结束属性。您还可以将if语句中的两行合并到$('[id$=panelSection2]').slideUp()