getInputLabel
This snippet will find out the label associated with the input field
by itsazzad
HTML
<div class="panel panel-default">
<div class="panel-heading">Form elements</div>
<div class="panel-body">
<form method="get" action="/" class="form-horizontal">
<fieldset>
<legend>Classic inputs</legend>
<div class="form-group">
<label class="col-sm-2 control-label">Rounded Corners</label>
<div class="col-sm-10">
<input type="text" class="form-control form-control-rounded">
</div>
</div>
</fieldset>
<fieldset>
<div class="form-group">
<label class="col-sm-2 control-label">With help</label>
<div class="col-sm-10">
<input type="text" class="form-control"> <span class="help-block m-b-none">A block of help text that breaks onto a new line and may extend beyond one line.</span>
</div>
</div>
</fieldset>
<fieldset>
<div class="form-group">
<label for="input-id-1" class="col-sm-2 control-label">Label focus</label>
<div class="col-sm-10">
<input id="input-id-1" type="text" class="form-control">
</div>
</div>
</fieldset>
<fieldset>
<div class="form-group">
<label class="col-sm-2 control-label">Password</label>
<div class="col-sm-10">
<input type="password" name="password" class="form-control">
</div>
</div>
</fieldset>
<fieldset>
<div class="form-group">
<label class="col-sm-2 control-label">Placeholder</label>
<div class="col-sm-10">
<input type="text" placeholder="placeholder"...
JavaScript
$("input").each(function () {
if ($.trim($(this).prev('label').text()) != "") {
console.log("\nprev>children:");
console.log($.trim($(this).prev('label').text()));
} else {
if ($.trim($(this).parent('label').text()) != "") {
console.log("\nparent>children:");
console.log($.trim($(this).parent('label').text()));
} else {
if ($.trim($(this).parent().prev('label').text()) != "") {
console.log("\nparent>prev>children:");
console.log($.trim($(this).parent().prev('label').text()));
} else {
console.log("NOTFOUND! So set your own condition now");
}
}
}
});