如何处理复选框的单击以显示另一个控件,最好是用户动态控制(ASP.NET)。
答案 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,这样可以让您更轻松地使用插件(即将推出示例网站)。