0

I borrowed some code from another post, so I realize that the col1 designation isn't necessary for my example, but basically this just needs to populate with a certain employees information when you choose a certain topic (payroll, tax, etc.):

HTML:

<table class="table table-bordered table-striped">
    <tr>
        <th>
            <select class="col1 selectTopic">
                <option>Payroll</option>
                <option>Tax</option>
                <option>Accounts Payable</option>
            </select>
        </th>
    </tr>
    <tr>
        <td class="col1 name"></td>
    </tr>
    <tr>
        <td class="col1 photo"></td>
    </tr>
      <tr>
        <td class="col1 email"></td>
    </tr>
      <tr>
        <td class="col1 phone"></td>
    </tr>
</table>

Javascript:

var data = {
    "contacts":
{
        "contact": [
{
            "name": "Payroll",
            "photo": "Emp 1 Photo",
            "email": "[email protected]",
            "phone": "4113834848"},
{
            "name": "Tax",
            "photo": "Emp 2 Photo",
            "email": "[email protected]",
            "phone": "4113834848"},
{
            "name": "Accounts Payable",
            "photo": "Emp 3 Photo",
            "email": "[email protected]",
            "phone": "4113834848"},
]}
}

$(".selectTopic").change(function() {
    var jthis = $(this);
    var whichCol;
    if (jthis.hasClass("col1")) {
        whichCol = "col1";
    }
    $.each(data.topics.topic, function(i, v) {
        if (v.name == jthis.val()) {
            $("td." + whichCol + ".name").html(v.name);
            $("td." + whichCol + ".photo").html(v.photo);
            $("td." + whichCol + ".email").html(v.email);
            $("td." + whichCol + ".phone").html(v.phone);
            return;
        }
    });

});

1 Answer 1

1

You have data.topics.topic, I believe you want data.contacts.contact

https://jsfiddle.net/qfy397jt/

Do you know how to use Developer Tools/a console in the browser? It would've shown you the cause of this error (that data.topics is undefined). https://developers.google.com/web/tools/chrome-devtools/iterate/inspect-styles/shortcuts?hl=en for if you haven't used Dev. tools before!

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.