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");
            }
        }
    }
});