如何检查给定的 DOM 元素是否为复选框。
设想:
我有一组文本框和复选框,其中的值是动态分配的。我无法确定 DOM 元素是复选框还是文本框。
只使用 vanilla javascript 你可以做
if (el.type && el.type === 'checkbox') {
...
}
甚至更短
if ((el || {}).type === 'checkbox') {
...
}
或者在现代浏览器中你可以使用matches()
if (el.matches('[type="checkbox"]') {
...
}
检查任何东西
function isCheckbox (element) {
return element instanceof HTMLInputElement
&& element.getAttribute('type') == 'checkbox'
}
if( $(element)[0].type == "checkbox" ) {
}
或者
if( $(element).is(':checkbox') ) {
}
看看复选框选择器。
var checkboxes = $("form input:checkbox");
你可以知道输入的类型是这样的:
if ($(".your-input").is(":text"))
{
// Textbox
}
else if ($(".your-input").is(":checkbox"))
{
// Checkbox
}
if (<DOMNode>.type === "checkbox") {
// ...
}
尝试这个;
$(element).is(':checkbox');
这element
是您的选择器element
if( $(element).is(':checkbox') ) {
// do something
}
jQuery is()
:
if ($el.is(':checkbox')) { ... }
您可以使用伪选择器 :checkbox 调用 jQuery 的 is 函数:
$('#myinput').is(':checkbox')
您应该有一个体面的命名约定,它可以让您仅通过查看元素的 id 或名称就知道元素是否是复选框。例如“chkMyCheckbox”