Javascript 选择t:selectManyCheckbox中的所有复选框
我已经使用JSF2.0创建了web应用程序,其中有许多复选框。我想在单击全选复选框时选中这些复选框 我有下面的代码Javascript 选择t:selectManyCheckbox中的所有复选框,javascript,jsf,jsf-2,checkbox,selectmanycheckbox,Javascript,Jsf,Jsf 2,Checkbox,Selectmanycheckbox,我已经使用JSF2.0创建了web应用程序,其中有许多复选框。我想在单击全选复选框时选中这些复选框 我有下面的代码 <t:selectBooleanCheckbox value="#{UserRegistration.selectAll}" onclick="selectAll(this)" /> <t:selectManyCheckbox value="#{UserRegistration.pagesSelected}" layout="pageDirection" la
<t:selectBooleanCheckbox value="#{UserRegistration.selectAll}" onclick="selectAll(this)" />
<t:selectManyCheckbox value="#{UserRegistration.pagesSelected}" layout="pageDirection" layoutWidth="4">
<f:selectItem itemValue="registerForPatentss" itemLabel="Register New Applicant"/>
<f:selectItem itemValue="success" itemLabel="Register New Project" />
<f:selectItem itemValue="getReportss" itemLabel="Project Reports" />
<f:selectItem itemValue="searhPatentss" itemLabel="Search For Project" />
<f:selectItem itemValue="addUserss" itemLabel="Add User Account" />
<f:selectItem itemValue="logPatentSystemss" itemLabel="System Log" />
<f:selectItem itemValue="userlistss" itemLabel="Details Of Registered Users" />
</t:selectManyCheckbox>
编辑2
注意,我还有更多的复选框,如下所示
<h:selectManyCheckbox value="#{UserRegistration.rightSelected}" id="myRight">
<f:selectItem itemValue="add" itemLabel="Add"/>
<f:selectItem itemValue="delete" itemLabel="Delete" />
<f:selectItem itemValue="edit" itemLabel="Edit" />
<f:selectItem itemValue="invite" itemLabel="Invite For Projects" />
</h:selectManyCheckbox>
我无法帮助服务器端,但在您的客户端代码中:
> <script language="javascript">
checked属性是布尔属性,因此您只需执行以下操作:
if (checkbox.checked) {
等等。可能更简单的方法是在元素上循环,并将复选框设置为与复选框相同的“检查性”,例如
var checked=checkbox.checked;
对于(var i=0,iLen=elements.length;i我无法帮助服务器端,但在客户端代码中:
> <script language="javascript">
checked属性是布尔属性,因此您只需执行以下操作:
if (checkbox.checked) {
如此类推。也许更简单的方法是在元素上循环,并将复选框设置为与复选框相同的“检查性”,例如
var checked=checkbox.checked;
对于(var i=0,iLen=elements.length;i下面是我所拥有的
<script language="javascript" type="text/javascript">
function selectAllProjects() {
var iLen=userRegisterForm.elements.length;
for (var i=0; i<iLen; i++) {
if (document.userRegisterForm.elements[i].type == "checkbox" && document.userRegisterForm.elements[i].value>=1) {
document.userRegisterForm.elements[i].checked = true;
}
}
}
function deselectAllProjects() {
var iLen=userRegisterForm.elements.length;
for (var i=0; i<iLen; i++) {
if (document.userRegisterForm.elements[i].type == "checkbox" && document.userRegisterForm.elements[i].value>=1) {
document.userRegisterForm.elements[i].checked = false;
}
}
}
</script>
| <a onclick="selectAllProjects();">Select All</a> |
<a onclick="deselectAllProjects();">Clear All</a> |
函数selectAllProjects(){
var iLen=userRegisterForm.elements.length;
对于(变量i=0;iiLen;i++){
if(document.userRegisterForm.elements[i].type==“checkbox”&;document.userRegisterForm.elements[i].value>=1){
document.userRegisterForm.elements[i].checked=true;
}
}
}
函数取消所有项目(){
var iLen=userRegisterForm.elements.length;
对于(变量i=0;iiLen;i++){
if(document.userRegisterForm.elements[i].type==“checkbox”&;document.userRegisterForm.elements[i].value>=1){
document.userRegisterForm.elements[i].checked=false;
}
}
}
|全选|
清除所有|
以下是我所拥有的
<script language="javascript" type="text/javascript">
function selectAllProjects() {
var iLen=userRegisterForm.elements.length;
for (var i=0; i<iLen; i++) {
if (document.userRegisterForm.elements[i].type == "checkbox" && document.userRegisterForm.elements[i].value>=1) {
document.userRegisterForm.elements[i].checked = true;
}
}
}
function deselectAllProjects() {
var iLen=userRegisterForm.elements.length;
for (var i=0; i<iLen; i++) {
if (document.userRegisterForm.elements[i].type == "checkbox" && document.userRegisterForm.elements[i].value>=1) {
document.userRegisterForm.elements[i].checked = false;
}
}
}
</script>
| <a onclick="selectAllProjects();">Select All</a> |
<a onclick="deselectAllProjects();">Clear All</a> |
函数selectAllProjects(){
var iLen=userRegisterForm.elements.length;
对于(变量i=0;iiLen;i++){
if(document.userRegisterForm.elements[i].type==“checkbox”&;document.userRegisterForm.elements[i].value>=1){
document.userRegisterForm.elements[i].checked=true;
}
}
}
函数取消所有项目(){
var iLen=userRegisterForm.elements.length;
对于(变量i=0;iiLen;i++){
if(document.userRegisterForm.elements[i].type==“checkbox”&;document.userRegisterForm.elements[i].value>=1){
document.userRegisterForm.elements[i].checked=false;
}
}
}
|全选|
清除所有|
如果您需要javascript帮助,最好发布浏览器获得的帮助。如果您需要javascript帮助,最好发布浏览器获得的帮助。感谢您的回复。您的解决方案会起作用,但问题是我有两个4组文本框。根据您的解决方案,它将选择表单中的所有复选框,而这不是我想要的。仅该部分复选框应该被选中。
属性是可选的,因为HTML5默认为text/javascript
@BalusC谢谢,奇怪的是它默认为过时的媒体类型。我想知道作者为什么没有指定application/javascript或application/ecmascript。谢谢你的回复。你的解决方案可以工作,但问题是,我有两个4组文本框。根据您的解决方案,它将选择所有形式的复选框,而这不是我想要的。只应选择该部分复选框。
属性是可选的,因为HTML5默认为text/javascript
@BalusC谢谢,奇怪的是它默认为过时的媒体我想知道为什么作者没有指定application/javascript或application/ecmascript。
<script language="javascript" type="text/javascript">
function selectAllProjects() {
var iLen=userRegisterForm.elements.length;
for (var i=0; i<iLen; i++) {
if (document.userRegisterForm.elements[i].type == "checkbox" && document.userRegisterForm.elements[i].value>=1) {
document.userRegisterForm.elements[i].checked = true;
}
}
}
function deselectAllProjects() {
var iLen=userRegisterForm.elements.length;
for (var i=0; i<iLen; i++) {
if (document.userRegisterForm.elements[i].type == "checkbox" && document.userRegisterForm.elements[i].value>=1) {
document.userRegisterForm.elements[i].checked = false;
}
}
}
</script>
| <a onclick="selectAllProjects();">Select All</a> |
<a onclick="deselectAllProjects();">Clear All</a> |