Javascript ASP.net用户界面刷新问题
我正在我的一个网页中使用复选框和复选框列表 用户界面就像 颜色-标题复选框 复选框列表项是 红色的 绿色的 蓝色的 黄色的 完成选择-单击标题复选框可选择/取消选择整个复选框列表 复选框列表的部分选择显示具有不同背景颜色的标题复选框,以指示部分选择 我在每个复选框列表选择更改中检查所选项目的数量。在客户机-服务器环境中,存在时间延迟,如果我们在复选框列表中进行两个连续选择,则会对第一个选择执行标题控件的更新,在刷新UI时,第二个选择将消失。 我还使用JavaScript实现了上面的一个,但是行为也是一样的。Javascript ASP.net用户界面刷新问题,javascript,asp.net,Javascript,Asp.net,我正在我的一个网页中使用复选框和复选框列表 用户界面就像 颜色-标题复选框 复选框列表项是 红色的 绿色的 蓝色的 黄色的 完成选择-单击标题复选框可选择/取消选择整个复选框列表 复选框列表的部分选择显示具有不同背景颜色的标题复选框,以指示部分选择 我在每个复选框列表选择更改中检查所选项目的数量。在客户机-服务器环境中,存在时间延迟,如果我们在复选框列表中进行两个连续选择,则会对第一个选择执行标题控件的更新,在刷新UI时,第二个选择将消失。 我还使用JavaScript实现了上面的一个,但是行为
有什么替代方案呢?您的问题不是特别清楚,但听起来您需要某种三态复选框?这听起来像是回发正在发生,并清除了您的第二个选择 如果是这样,还有一些控制选项。这里有一个链接,它可能会有所帮助
您确实需要发布一些代码并链接到您提到的屏幕截图。您正试图满足两种情况,最简单的方法是使用Javascript。当然,一个方向是使用Jquery简化DOM元素之间的连接 下面是一个涵盖这两种场景的示例。一个顶级控件检查/取消选中所有元素。第二,个体改变顶层元素的背景。这不是拖放运行代码,它只是单独演示了该技术。如果您不熟悉Jquery,我留给您的更改和调整:只需在站点上搜索每个函数。享受吧
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
// Wire up the 'select-all' to the child elements
$('#topLevel').bind('change' , function(){
// Record this object
var base = this;
// Change the child elements
$('#checkboxContainer input').each( function(){
$(this).attr('checked' , $(base).is(':checked'))
})
});
// Make the individual checkbox selects alter the
// background of the top-level wrapper
$('#checkboxContainer input').bind('change' , function(){
// Get a handle to the top item
var topLevel = $('#topLevelWrapper');
// Have we selected the item?
if($(this).is(':checked')){
// Remove the previous class assignments
topLevel.attr('class' , '');
// Assign the current css class from the parent
topLevel.addClass( $(this).parent().attr('class') );
}
});
})
</script>
<style type="text/css">
.Red{
background-color:#F00;
}
.Green{
background-color:#0F0;
}
.Blue{
background-color:#00F;
}
</style>
</head>
<body>
<div id="topLevelWrapper">
<label for="topLevel">Top level selection</label>
<input type="checkbox" id="topLevel" />
</div>
<div id="checkboxContainer">
<ul>
<li class="Red">
<label for="topLevel">Red</label>
<input type="checkbox" />
</li>
<li class="Blue">
<label for="topLevel">Blue</label>
<input type="checkbox" />
</li>
<li class="Green">
<label for="topLevel">Green</label>
<input type="checkbox" />
</li>
</ul>
</div>
</body>
我读了两遍,仍然不知道你在说什么。你在说哪个屏幕截图?需要更多信息。你想达到什么目标?在复选框点击等的场景后面发生了什么。你知道你可以编辑你的问题吗?然后,当你发现无法附加截图后,你可以删除附加截图的引用。也许你可以找到其他的方法来澄清你想要什么。谢谢你的回答。是的,我正在努力实现类似三态复选框的目标。我无法附加屏幕截图。