Solved

How to enable an auto-suggest form field appear over the top of a table?

Posted on 2011-09-25
9
195 Views
Last Modified: 2012-05-12
Experts,

I am using a jquery script which auto-suggests last names from my database when a user enters a few letters into the form field.  This auto suggest field sits above a table of information on my page.  I want the suggestions generated from this input field to show on top of the table.

What is happening now is that when I type something into my form field, I get the auto-suggestions but, it pushes the table lower on the page.  Instead of pushing the table lower, I want the suggestions to lay on top of the table.

Can anyone help?

I've tried various configs with z-index and position but, I can't figure it out.


//THIS IS THE CSS THAT GOVERNS THE SUGGESTION BOX

@charset "utf-8";
.suggestionsBox {
		position: relative;
		left: 30px;
		margin: 10px 0px 0px 0px;
		width: 200px;
		background-color: #212427;
		-moz-border-radius: 7px;
		-webkit-border-radius: 7px;
		border: 2px solid #000;	
		color: #fff;
	}
	
	.suggestionList {
		margin: 0px;
		padding: 0px;
	}
	
	.suggestionList li {
		
		margin: 0px 0px 3px 0px;
		padding: 3px;
		cursor: pointer;
	}
	
	.suggestionList li:hover {
		background-color: #659CD8;
	}




//HERE IS MY CODE WHICH GENERATES THE AUTO SUGGEST MENU WHEN A USER TYPES IN A FEW LETTERS, IT WORKS FINE

echo'<input type="text" size="30" value="" id="inputString" onkeyup="lookup(this.value);" onblur="fill();" />
<div class="suggestionsBox" id="suggestions" style="display:none; position:static; z-index:100;">
<img src="../images/upArrow.png" style="position: static; top: -12px; left: 10px; z-index:1000;" alt="upArrow" />
<div class="suggestionList" id="autoSuggestionsList">
</div>
</div>';


//THIS IS AN EXAMPLE OF A TABLE THAT I AM USING
echo'<table style="position:static; z-index:100;">';
echo'<tr><td></td></tr>';
echo'</table>';

//I NEED HELP WITH THE CSS SO THAT THE AUTO MENU DOES NOT PUSH THE TABLE LOWER ON THE PAGE

Open in new window

0
Comment
Question by:evibesmusic
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 4
9 Comments
 
LVL 15

Expert Comment

by:Eyal
ID: 36597159
can you give us a working site that shows the problem?
0
 
LVL 18

Accepted Solution

by:
Rartemass earned 500 total points
ID: 36597245
Z index should resolve this.
For a start z-index ONLY works on positioned elements. The three options for the position attribute are:
absolute, relative, and fixed.
You have position:static; in your code, which isn't a valid option.
Change those to position: fixed; and then apply the z-index to those elements.

The z-index with a high number will be positioned above any lower number.
Here are the details of the attribute:
http://www.w3schools.com/cssref/pr_pos_z-index.asp
0
 

Author Comment

by:evibesmusic
ID: 36597258
@Eval:

I can't but here are two screen shots...

The first shot shows how the table sits when the auto suggest field is not enabled:

Shot one

Shot two
0
Business Impact of IT Communications

What are the business impacts of how well businesses communicate during an IT incident? Targeting, speed, and transparency all matter. Find out more in this infographic.

 

Author Comment

by:evibesmusic
ID: 36597278
@All:

I apologize but, I can't have a static positioning of the table element because the table is dynamically generated with records.
0
 
LVL 18

Assisted Solution

by:Rartemass
Rartemass earned 500 total points
ID: 36597289
Then change the table element to have the position: relative; attribute.
Without a position attribute, you can't use z-index, which is designed for this kind of thing.
0
 
LVL 18

Expert Comment

by:Rartemass
ID: 36597294
This article may help you with understanding positioning and what type to set on the table:
http://www.w3schools.com/css/css_positioning.asp
0
 

Author Comment

by:evibesmusic
ID: 36597307
@Rartemass:

Thank you.  Your suggestions worked. Dynamic table element now has the 'relative' attribute, suggestions element uses the 'static' attribute.  Work.

Cheers.
0
 

Author Closing Comment

by:evibesmusic
ID: 36597312
Thanks.
0
 
LVL 18

Expert Comment

by:Rartemass
ID: 36597320
Good to hear its all working.
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Because your company can’t afford for you to make SEO mistakes, you’ll want to ensure you’re taking the right steps each and every time you post a new piece of content. This list of optimization do’s and don’ts can help you become an SEO wizard.
Although a lot of people devote their energy toward marketing for specific industries, there are some basic principles that can be applied to any sector imaginable. We’ll look at four steps to take and examine how those steps were put into action fo…
The viewer will learn how to count occurrences of each item in an array.
The viewer will get a basic understanding of what section 508 compliance can entail, learn about skip navigation links, alt text, transcripts, and font size controls.

752 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question