gpt4 book ai didi

javascript - 无法使用 JavaScript 检索 HTML 元素的类型

转载 作者:行者123 更新时间:2023-11-28 11:57:56 26 4
gpt4 key购买 nike

我想知道如何使用标签名称检索元素类型我正在 HTML 表单上创建代码。 HTML 输入元素有各种类型(文本字段、按钮、日期选择器)。

我想要的是,如果用户从下拉列表中选择一个选项,请禁用复选框。但是该复选框是使用 PHP 循环生成的,并且我还在复选框名称中传递了 id,因此我无法使用:

document.getElementsByName('checkbox');

我的复选框的名称是“checkbox”,所以我尝试使用:

document.getElementsByTagName('input');

我用于禁用该复选框,但这禁用了页面上的所有输入元素。有什么解决办法吗?我如何将 type 属性用作复选框并禁用复选框:

function  disabler()
{
checkboxes = document.getElementsByTagName('input');
if(checkboxes.type='checkbox')
{
for(var i=1, n=checkboxes.length;i<n;i++)
{
checkboxes[i].disabled = true;//here i want to disable only the checkbox on page
}
}
}

最佳答案

您正在使用赋值运算符= NOT比较==。替换此行

if(checkboxes.type='checkbox')

if(checkboxes.type == 'checkbox')

或严格比较运算符===(也比较变量类型,例如"0"=== 0为假,但"0"== 0 为真)

if(checkboxes.type === 'checkbox')

此外您正在尝试访问 getElementsByTagName 返回的集合type属性。要访问特定元素,请参阅复选框,因为它是一个数组

if(checkboxes[0].type === 'checkbox') //accesses first checkbox element

要循环遍历所有元素,同时检查每个元素是否是复选框,请执行以下操作

for(var i=0; i < checkboxes.length; i++)
{
if(checkboxes[i].type === 'checkbox') {
checkboxes[i].disabled = true;
}
}

<强> Here's an example fiddle for you

关于javascript - 无法使用 JavaScript 检索 HTML 元素的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19606346/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com