JSFiddle - React, Tailwind, and code Playground
by winstonchang
HTML
<form>
<label>
<input type="radio" name="font" value="value1">Label 1 (input wrapped in label)</label>
<br>
<input type="radio" name="font" id="font2" , value="value2">
<label for="font2">Label 2 (label uses for=)</label>
<br>
</form>
JavaScript
$('form input').each(function (i, e) {
// Get the label in the associated <label for='id'>
var label_obj = $('label[for=' + this.id + ']');
var label_for = null;
if (label_obj.length > 0) {
label_for = label_obj.text();
label_for = $.trim(label_for);
}
// If the input is wrapped with a label, get that
var label_wrap = null;
if (this.parentNode.tagName === "LABEL") {
label_wrap = $(this.parentNode).text();
label_wrap = $.trim(label_wrap);
}
alert("Label with associated for: '" + label_for + "'\n\n" +
"Label wrapping input tag: '" + label_wrap + "'");
});