Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

How to insert values into a listbox based on an array?

Posted on 2008-10-02
5
Medium Priority
?
911 Views
Last Modified: 2012-05-05
Hi Experts,

How to insert values into a listbox based on an array?

I have the following ASP code which queries data from a table and reads it into an array. Now I want to use the array to populate a list box in a form. How can does be done?

Thanks


<%
'First declare variables used
 
 
Dim arrLocationID
Dim arrLocationName
Dim arrItemID
Dim arrItemName
 
 
 
arrLocationID = "'"
arrLocationName = "'"
arrItemID = "'"
arrItemName = "'"
 
 
 
'=============================START OF CODE FOR LOCATION DROP DOWN===================
 
 
'Query Location
 
Set rs=Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT LOCATIONS.LocationID, LOCATIONS.LocationName FROM LOCATIONS WHERE (((LOCATIONS.Active)=-1)) ORDER BY LOCATIONS.LocationName;"
rs.Open strSQL,conn
 
 
IF NOT rs.EOF THEN
 
  WHILE NOT rs.EOF
 
    arrLocationName = arrLocationName & rs("LocationName") & "','"
 
    rs.MoveNext
 
  WEND
 
  arrLocationName  = Left(arrLocationName , Len(arrLocationName ) - 2)  ' Get rid of the ,' at the end
 
  rs.Close
  Set rs = nothing
 
END IF
 
 
 
 
 
'=============================END OF CODE FOR LOCATION DROP DOWN===================
%>

Open in new window

0
Comment
Question by:indyng
[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
  • 2
  • 2
5 Comments
 
LVL 82

Expert Comment

by:hielo
ID: 22627054
try:
<%
'First declare variables used
 
 
Dim arrLocationID
Dim arrLocationName
Dim arrItemID
Dim arrItemName
 
 
 
arrLocationID = "'"
arrLocationName = "'"
arrItemID = "'"
arrItemName = "'"
 
 
 
'=============================START OF CODE FOR LOCATION DROP DOWN===================
 
 
'Query Location
 
Set rs=Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT LOCATIONS.LocationID, LOCATIONS.LocationName FROM LOCATIONS WHERE (((LOCATIONS.Active)=-1)) ORDER BY LOCATIONS.LocationName;"
rs.Open strSQL,conn
 
 
IF NOT rs.EOF THEN
 Response.Write("<select name='location'>")
  WHILE NOT rs.EOF
   Response.Write("<option value='" & rs("LocationID").value & "'>" & rs("LocationName").value & "</option>")
'    arrLocationName = arrLocationName & rs("LocationName") & "','"
 
    rs.MoveNext
 
  WEND
 Response.Write("</select>")
'  arrLocationName  = Left(arrLocationName , Len(arrLocationName ) - 2)  ' Get rid of the ,' at the end
 
  rs.Close
  Set rs = nothing
 
END IF
 
 
 
 
 
'=============================END OF CODE FOR LOCATION DROP DOWN===================
%>

Open in new window

0
 
LVL 1

Author Comment

by:indyng
ID: 22627113
The data is first queried using ASP and stored in an array.

The array then populates the list box in the form using Java script. This is what I am looking for.

What is the syntax to insert values into a listbox using an array using Java script?

Thanks
0
 
LVL 82

Expert Comment

by:hielo
ID: 22628748
>>What is the syntax to insert values into a listbox using an array using Java script?
The array to speak of resides on the server, NOT on the browser. The javascript code would execute on the browser, not on the server. So, javascript will NEVER see that array. You need to use Response.Write("...") to send those values to the browser. Hence, instead of sending a comma-separated list of values, I suggested the ASP code that builds the actual HTML SELECT list.
0
 
LVL 7

Accepted Solution

by:
bluV11t earned 2000 total points
ID: 22629171
Don't know why you'd want to do it with JavaScript but here it is....
<%
'Query Location
 
Set rs=Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT LOCATIONS.LocationID, LOCATIONS.LocationName FROM LOCATIONS WHERE (((LOCATIONS.Active)=-1)) ORDER BY LOCATIONS.LocationName;"
rs.Open strSQL,conn
 
 
IF NOT rs.EOF THEN
 
  WHILE NOT rs.EOF
 
    arrLocationName = arrLocationName & rs("LocationName") & ","
 
    rs.MoveNext
 
  WEND
 
  arrLocationName  = Left(arrLocationName , Len(arrLocationName ) - 2)  ' Get rid of the , at the end
 
  rs.Close
  Set rs = nothing
 
END IF
%>
 
<html>
<script language="JavaScript">
 
function populate(strSelectbox, strArray)
{
var myArray = strArray.split(",");
var mySelect = document.getElementById(strSelectbox);
var myIndex = 0;
 
	for(var item in myArray)
	{
	    var newOption = document.createElement('option');
	    alert(item);
		var myIndex = mySelect.options.length;
		mySelect.options[myIndex] = new Option(myArray[myIndex], myArray[myIndex], false, false); 
		myIndex++;
	}
}
</script>
<body onLoad="JavaScript: populate('location', '<%=arrLocationName%>')">
<select id="location" name="location">
 
</select>
</body>
</html>

Open in new window

0
 
LVL 7

Expert Comment

by:bluV11t
ID: 22629274
Sorry, remove line 39             alert(item);
Debugging script :-)
0

Featured Post

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

Question has a verified solution.

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

I was asked about the differences between classic ASP and ASP.NET, so let me put them down here, for reference: Let's make the introductions... Classic ASP was launched by Microsoft in 1998 and dynamically generate web pages upon user interact…
This article will give core knowledge of JavaScript and will head in to your first JavaScript program. I am Durvesh Naik and I am here to deal with this series of JavaScript. I will teach you JavaScript in part wise , as its quite boring to read big…
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

636 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