Comment puis-je vérifier si un élément DOM donné est une case à cocher.
Scénario:
J'ai un ensemble de zones de texte et de cases à cocher dans lesquelles les valeurs sont attribuées de manière dynamique. Je n'ai aucun moyen d'identifier si l'élément DOM est une case à cocher ou une zone de texte.
En utilisant uniquement JavaScript javascript, vous pouvez le faire
if (el.type && el.type === 'checkbox') {
...
}
ou même plus court
if ((el || {}).type === 'checkbox') {
...
}
ou dans les navigateurs modernes, vous pouvez utiliser matches()
if (el.matches('[type="checkbox"]') {
...
}
Vérifie quoi que ce soit
function isCheckbox (element) {
return element instanceof HTMLInputElement
&& element.getAttribute('type') == 'checkbox'
}
if( $(element)[0].type == "checkbox" ) {
}
OR
if( $(element).is(':checkbox') ) {
}
Jetez un coup d'œil au sélecteur de cases à cocher .
var checkboxes = $("form input:checkbox");
Vous pouvez savoir quel type d'entrée est comme ceci:
if ($(".your-input").is(":text"))
{
// Textbox
}
else if ($(".your-input").is(":checkbox"))
{
// Checkbox
}
if (<DOMNode>.type === "checkbox") {
// ...
}
Essaye ça;
$(element).is(':checkbox');
ici element
est sélecteur à votre element
if( $(element).is(':checkbox') ) {
// do something
}
jQuery is()
:
if ($el.is(':checkbox')) { ... }
Vous pouvez utiliser le pseudo-sélecteur: La case à cocher avec un appel à jQuery est sa fonction:
$('#myinput').is(':checkbox')
Vous devriez avoir une convention de nommage décente qui vous permet de savoir si un élément est une case à cocher en ne voyant que son id ou son nom. par exemple. "chkMyCheckbox"