Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Iterate through inputs inside of a div

I'am trying to iterate through all inputs which are placed on a specific div via jQuery, but there is no response. I can't see the values of inputs by using alert. What am I doing wrong ?

<form id="internshipStage2Form" method="POST" action="form2.php">
    <center>
        <table id="studentInformation" border="1">
            <caption style="color:#f00;">Student(Trainee) Information</caption>
            <tr>
                <td valign="middle" align="center">
                    <label id="stuEmailLabel" for="stuEmailText">E-mail Address</label>
                </td>
                <td valign="middle" align="center"><?php echo $email; ?></td>
            </tr>
            <tr>
                <td valign="middle" align="center">
                    <label id="stuPhoneLabel" for="stuPhoneText">Phone</label>
                </td>
                <td><input id="stuPhoneText" type="text" name="stuPhoneText"/></td>
            </tr>
        </table>
        <div id="companyInfo">
            <table id="companyInformation" border="1">
                <caption style="color:#f00;">Company Information</caption>
                <tr>
                    <td valign="middle" align="center">
                        <label id="companyNameLabel" for="companyNameText">Company Name</label>
                    </td>
                    <td><input id="companyNameText" type="text" name="companyNameText"/></td>
                </tr>
                <tr>
                    <td valign="middle" align="center">
                        <label id="companyAdressLabel" for="companyAdressText">Address</label>
                    </td>
                    <td><input id="companyAdressText" type="text" name="companyAdressText"/></td>
                </tr>
                <tr>
                    <td valign="middle" align="center">
                        <label id="companyPhoneLabel" for="companyPhoneText">Phone</label>
                    </td>
                    <td><input id="companyPhoneText" type="text" name="companyPhoneText"/></td>
                </tr>
                <tr>
                    <td valign="middle" align="center">
                        <label id="" for="">Did the any students work as trainees in the company in the previous years?</label>
                    </td>
                    <td valign="middle" align="center">
                        Yes<input id="g1Positive" type="radio" name="g1" value="YES"/>
                        No<input id="g1Negative" type="radio" name="g1" value="NO"/>
                    </td>
                </tr>
            </table>
        </div>
        <h4 style="color:#f00;">
            I agree the terms.
        </h4>
        <input id="stuDecCheckBox" type="checkbox" name="stuDecCheckBox" /></br>
        <input id="sendButton" type="submit" name="sendButton2" value="SEND FOR APPROVEMENT"/>
    </center>
</form>

JS

$('#companyInfo').children('input').each(function () {
    alert(this.value);
});

Any help would be appriciated.

like image 560
Tartar Avatar asked Jul 07 '14 20:07

Tartar


People also ask

How do I iterate through a div in jQuery?

jQuery Selector can be used to find (select) HTML elements from the DOM. Once an element is selected, the jQuery children() method is called to find all the child elements of the selected element.

How to loop through all input fields jQuery?

Approach 1: In this approach, we will iterate over every input type which is of text type by using input[type=text] as the selector. Next, we will use the each() method to iterate over the inputs to display the values or perform any operation as needed. Syntax: $("#id input[type=text]").

How to get value of each input in jQuery?

Answer: Use the jQuery val() Method You can simply use the jQuery val() method to get the value in an input text box. Try out the following example by entering something in the text input box and then click the "Show Value" button, it will display the result in an alert dialog box.


1 Answers

Your inputs are not children of #companyInfo. Just do this:

$('#companyInfo input').each(function () {
    alert(this.value);
});
like image 169
isherwood Avatar answered Sep 17 '22 13:09

isherwood