Paulcraey
Paulcraey

Reputation: 391

How to pass a function argument into the jquery selector

I have a site with several pop up windows. I want to use 1 single function on several elements. It works well in regular JS, but not in jQuery.

In my HTML I have something like:

<button onclick="div_show('contact')">More?</button>

and

<div id="contact" >
    blah blah
</div>

This #contact element is hidden by default. So if i click on the button the contact div appears with this JS:

    function div_show(id) {
document.getElementById(id).style.display = "block";
}

However, i want to use jquery for the fade effects

function div_show(id) {
$(???).fadeIn();
}

How can i make the function argument to pass into the jquery selector

It works well like this of course :

function div_show(id) {
    $(#contact).fadeIn();
    }

but works only for 1 element.

Upvotes: 0

Views: 456

Answers (2)

Moinul Islam
Moinul Islam

Reputation: 469

function div_show(id) {
 $('#'+id).fadeIn();
}

Upvotes: 0

I think what you are looking for is this:

$("#" + id).fadeIn();

For multiple selectors you could do this:

$("#" + id1 + ", #" + id2).fadeIn(); //etc

Also for completeness, this line:

 $(#contact).fadeIn();

should be formatted with quotes:

 $("#contact").fadeIn();

Upvotes: 5

Related Questions