JQuery在div中输出动态控件

时间:2009-06-24 21:47:27

标签: asp.net jquery ajax controls

如何处理复选框的单击以显示另一个控件,最好是用户动态控制(ASP.NET)。

5 个答案:

答案 0 :(得分:0)

我对你正在使用的系统一无所知,但我这样做的方法很简单......

将用户控件粘贴在自己的空白页面上。

单击该复选框后,让JQuery获取用户控件所在页面的HTML内容并将其粘贴到div中。

这会在调用页面中产生不那么整洁的html。

这是一个asp:CheckBox还是一个html输入?

答案 1 :(得分:0)

你在寻找这样的东西:

$(function(){
    $('#Control').hide(); //initially hide the control
    $('#checkbox').click(function(){  // bind the checkbox click event
        if ($('#checkbox').attr('checked')) {
            $('#Control').show(); 
        }
    });
});


<mycontrol:UC id="Control" runat="server" />

答案 2 :(得分:0)

如果要创建新对象,可以执行以下操作:

var checkbox = $("<input type='checkbox' ... />");
$('div#someID').append(checkbox);

虽然听起来您可能希望从AJAX调用中获取数据。我无法从这个问题中说出来。

答案 3 :(得分:0)

假设您默认使用CSS隐藏控件,可以将TStamper的代码缩短为:

$(function() {
    $('#checkbox').click(function() {
        $('#control').toggle();
    });
});

<mycontrol:UC id="control" runat="server" />

答案 4 :(得分:0)

我偏爱使用jquery的taconite插件。它使您可以从单个ajax调用返回多个控件。 对于简单的显示/隐藏控制场景,在页面上呈现隐藏控件就足够了。如果您的控件很大或由于用户操作而发生更改,那么您最好的选择是在服务器上呈现控件并使用js更新DOM。 如果您正在使用jquery进行DOM更新,并希望通过id使用来查找控件:

$("[id$=controlId]")

即使使用id.net的asp.net前缀,也可以找到您的控件。 我正在为taconite插件开发一个简单的c# wrapper,这样可以让您更轻松地使用插件(即将推出示例网站)。