Link to home
Start Free TrialLog in
Avatar of flfmmqp
flfmmqp

asked on

Populating a text area

I am using the code below to try and populate a textarea (StoresList) based on the value from my select box (cboDate).  

However, as you might be able to guess it is not populating anything.  I also thought I would try populating another select box with the Stores Value but none of this is working.  Any clue how I am messing this up?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Untitled Page</title>
<SCRIPT LANGUAGE=javascript>
<!--
 
function submitStores(){
	var objForm = document.forms[0];
	objForm.submit();
}
//-->
</SCRIPT>
 
<% 
sub updateStores()
     GEOID = Request.QueryString("id")
        Dim oRSbn
	    'Create the recordset object
	    Set oRSbn = Server.CreateObject("ADODB.Recordset")
    oRSbn.CursorType= 3 
    oRSbn.LockType = 1 
    oRSbn.CursorLocation = 3
	    'Open the recordset getting a list of all Divisions
        sqltext = "SELECT CHART_A.STORES, CHART_A.Event_Date FROM CHART_A GROUP BY CHART_A.STORES, CHART_A.Event_Date, CHART_A.GEOID HAVING (((CHART_A.GEOID)='10420')) ORDER BY CHART_A.[Event_Date];"
 
 
        oRSbn.open sqltext, "DSN=CompEvents"
         'go to first record.
        oRSbn.MoveFirst
 
    do while not oRSbn.eof        
        Response.Write("<option" & oRSbn("STORES") & ">" & oRSbn("STORES") & "</option>")
        'Response.Write("<textarea name ="StoresList" style="width: 933px; height: 50px;" > oRSbn("STORES") </textarea>")
       oRSbn.movenext
    loop
    oRSbn.close
    set oRSbn = nothing
 
end sub
%>
 
 
 
 
</head>
<body>
 
<form action="" method="post" name="frmDisplay" onSubmit="return submitForm()">
  <input type="hidden" name="FormAction" >
<br />
 
    <TD style="width: 150px; height: 73px;"><STRONG><EM>Choose Date:<br />
        <SELECT name=cboDate size=1 ID="Date" onChange = "submitStores()">
<%    
	'Create the recordset object
        Dim oRSbn
 
	Set oRSbn = Server.CreateObject("ADODB.Recordset")
	'Open the recordset getting a list of all Dates for this Market
    sqltext = "SELECT CHART_A.Event_Date FROM CHART_A GROUP BY CHART_A.Event_Date, CHART_A.GEOID HAVING (((CHART_A.GEOID)='10420')) ORDER BY CHART_A.[Event_Date];"
    oRSbn.open sqltext, "DSN=CompEvents"
     'go to first record.
    oRSbn.MoveFirst
        do while not oRSbn.eof
%>        
<option value="<%=oRSbn("Event_Date")%>"> <%=oRSbn("Event_Date")%></option>
<%
        oRSbn.movenext
        loop
    oRSbn.close
    set oRSbn = nothing    
 %>   
    
    </SELECT></EM></STRONG></TD>
 
 
<SELECT style="WIDTH: 200px; HEIGHT: 125px" multiple size=2 id=selType name=selType> 
			<%call updateStores%>
	  </SELECT>
<br />
 
     <textarea name ="StoresList" style="width: 933px; height: 50px;" > <% call updateStores%>  </textarea>
</form>
 
</body>
</html>

Open in new window

Avatar of silemone
silemone
Flag of United States of America image

Did you get any errors?  any output?  try using alert boxes/message boxes to see it there is any data?  it may be your query is not returning any data...
Avatar of rlovetx
rlovetx

Hi,
      You need to populate the textarea with your JavaScript...something like this:

document.getElementById("StoresList").value = myData;

     Where myData is the value you want to appear in the TextArea.  You also need to add some JavaScript to check your select value and set myData accordingly.


Avatar of flfmmqp

ASKER

Augh.  Okay I still have the same two problems.

1.) Getting the date from the select box.
2.) Populating the new data into the text area when the date changes.

Any help would be greatly appreciated.  Here is my updated code.  I think I am getting closer.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Untitled Page</title>
 
<SCRIPT LANGUAGE=javascript>
<!--
 
function submitStores(){
	var objForm = document.forms[0];
	objForm.submit();
}
//-->
</SCRIPT>
 
<% 
sub updateStores()
dim GEOID, strDate, strDate2
    //strDate2 = Request.Form("Date")
    
     GEOID = Request.QueryString("id")
    strDate = "01/2006"
 
        Dim oRSbn
	    'Create the recordset object
	    Set oRSbn = Server.CreateObject("ADODB.Recordset")
    oRSbn.CursorType= 3 
    oRSbn.LockType = 1 
    oRSbn.CursorLocation = 3
	    'Open the recordset getting a list of all Divisions
        //sqltext = "SELECT CHART_A.STORES, CHART_A.DATE2 FROM CHART_A GROUP BY CHART_A.STORES, CHART_A.DATE2, CHART_A.GEOID HAVING (((CHART_A.DATE2)='01/2004') AND ((CHART_A.GEOID)='" & GEOID & "')) ORDER BY CHART_A.DATE2;"
        sqltext = "SELECT CHART_A.STORES, CHART_A.DATE2 FROM CHART_A GROUP BY CHART_A.STORES, CHART_A.DATE2, CHART_A.GEOID HAVING (((CHART_A.DATE2)='" & strDate & "') AND ((CHART_A.GEOID)='" & GEOID & "')) ORDER BY CHART_A.DATE2;"
 
 
        oRSbn.open sqltext, "DSN=CompEvents"
         'go to first record.
        oRSbn.MoveFirst
 
    do while not oRSbn.eof        
        response.Write(oRSbn("STORES"))
       response.Write ("GEOID = " & GEOID & " strDate2 = " & strDate2)
       oRSbn.movenext
    loop
    oRSbn.close
    set oRSbn = nothing
 
end sub
%>
 
</head>
<body>
 
<form action="" method="post" name="frmDisplay" onSubmit="return submitForm()">
  <input type="hidden" name="FormAction" >
<br />
 
    <TD style="width: 150px; height: 73px;"><STRONG><EM>Choose Date:<br />
        <SELECT name=selDate size=1 ID="selDate" onChange = "submitStores()">
<%    
	'Create the recordset object
	Set oRSbn = Server.CreateObject("ADODB.Recordset")
	'Open the recordset getting a list of all Dates for this Market
    'sqltext = "SELECT CHART_A.[Date2] FROM CHART_A GROUP BY CHART_A.GEOID, CHART_A.[Date2] HAVING (((CHART_A.GEOID)='517')) ORDER BY CHART_A.[Date2];"
    sqltext = "SELECT CHART_A.Date2 FROM CHART_A GROUP BY CHART_A.Date2, CHART_A.GEOID HAVING (((CHART_A.GEOID)='517')) ORDER BY CHART_A.[Date2];"
 
    oRSbn.open sqltext, "DSN=CompEvents"
     'go to first record.
    oRSbn.MoveFirst
        do while not oRSbn.eof
%>        
<option value="<%=oRSbn("Date2")%>"> <%=oRSbn("Date2")%></option>
<%
        oRSbn.movenext
        loop
    oRSbn.close
    set oRSbn = nothing    
 %>   
    
    </SELECT></EM></STRONG></TD>
 
 
<SELECT style="WIDTH: 200px; HEIGHT: 125px" multiple size=2 id=selType name=selType> 
			<%call updateStores%>
	  </SELECT>
<br />
 
     <textarea name ="StoresList" style="width: 933px; height: 356px;" > <% call updateStores%>  </textarea>
    <br />
    C:\Inetpub\wwwroot\CHART\DMA_Chart_DataTable2.asp
</form>
 
</body>
</html>

Open in new window

Hey,
     The easiest way would be to change your form from post to get and have its action set to the same page.  This will pass your form data as a querystring.
     You can then add some ASP code to read the querystring values and update your selType select when the page refreshes.
     Other options:  update selType using JavaScript (this will mean having to write JavaScript data with ASP so you can update selType in this way), or you could look into Ajax...
Avatar of flfmmqp

ASKER

No Ajax.  Can you help me with the code.  I am fine with the easiest way.  I like easy.
ASKER CERTIFIED SOLUTION
Avatar of rlovetx
rlovetx

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of flfmmqp

ASKER

I keep getting a blank date.  I think I might need to somehow get the date value from the post that you were referring to but I am not sure exactly how to do this.

SELECT CHART_A.STORES, CHART_A.DATE2 FROM CHART_A GROUP BY CHART_A.STORES, CHART_A.DATE2, CHART_A.GEOID HAVING (((CHART_A.DATE2)='') AND ((CHART_A.GEOID)='517')) ORDER BY CHART_A.DATE2;
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Untitled Page</title>
 
<SCRIPT LANGUAGE=javascript>
<!--
 
function submitStores(){
	var objForm = document.forms[0];
	objForm.submit();
}
//-->
</SCRIPT>
 
<%
 
Dim strselDate
strselDate = Request.Form("selDate")
dim strGEOID, varGEOID
strGEOID = Request.QueryString("id")
 
%>
 
<% 
sub updateStores()
       
 dim varGEOID
 
         sqltext = "SELECT CHART_A.STORES, CHART_A.DATE2 FROM CHART_A GROUP BY CHART_A.STORES, CHART_A.DATE2, CHART_A.GEOID HAVING (((CHART_A.DATE2)='" & strselDate & "') AND ((CHART_A.GEOID)='517')) ORDER BY CHART_A.DATE2;"
     If strselDate <> "" Then
            Response.Write("Date Chosen" & strselDate)
     
        dim strDate, strDate2
 
        Dim oRSbn
	    'Create the recordset object
	    Set oRSbn = Server.CreateObject("ADODB.Recordset")
        oRSbn.CursorType= 3 
        oRSbn.LockType = 1 
        oRSbn.CursorLocation = 3
	    'Open the recordset getting a list of all Divisions
        //sqltext = "SELECT CHART_A.STORES, CHART_A.DATE2 FROM CHART_A GROUP BY CHART_A.STORES, CHART_A.DATE2, CHART_A.GEOID HAVING (((CHART_A.DATE2)='01/2004') AND ((CHART_A.GEOID)='" & GEOID & "')) ORDER BY CHART_A.DATE2;"
        sqltext = "SELECT CHART_A.STORES, CHART_A.DATE2 FROM CHART_A GROUP BY CHART_A.STORES, CHART_A.DATE2, CHART_A.GEOID HAVING (((CHART_A.DATE2)='" & strselDate & "') AND ((CHART_A.GEOID)='517')) ORDER BY CHART_A.DATE2;"
        oRSbn.open sqltext, "DSN=CompEvents"
         'go to first record.
        oRSbn.MoveFirst
 
        do while not oRSbn.eof
            response.Write(oRSbn("STORES"))
            response.Write (sqltext)        
           oRSbn.movenext
        loop
        oRSbn.close
        set oRSbn = nothing
    Else
        Response.Write("Select a date to see this info.")
        response.Write(sqltext)
    End If
end sub
%> 
 
 
</head>
<body>
 
<form action="" method="get" name="frmDisplay" onSubmit="return submitForm()">
  <input type="hidden" name="id" >
<br />
 
    <TD style="width: 150px; height: 73px;"><STRONG><EM>Choose Date:<br />
        <SELECT name=selDate size=1 ID="selDate" onChange = "submitStores()">
<%    
	'Create the recordset object
	Set oRSbn = Server.CreateObject("ADODB.Recordset")
	'Open the recordset getting a list of all Dates for this Market
    'sqltext = "SELECT CHART_A.[Date2] FROM CHART_A GROUP BY CHART_A.GEOID, CHART_A.[Date2] HAVING (((CHART_A.GEOID)='517')) ORDER BY CHART_A.[Date2];"
    sqltext = "SELECT CHART_A.Date2 FROM CHART_A GROUP BY CHART_A.Date2, CHART_A.GEOID HAVING (((CHART_A.GEOID)='517')) ORDER BY CHART_A.[Date2];"
 
    oRSbn.open sqltext, "DSN=CompEvents"
     'go to first record.
    oRSbn.MoveFirst
        do while not oRSbn.eof
%>        
<option value="<%=oRSbn("Date2")%>"> <%=oRSbn("Date2")%></option>
<%
        oRSbn.movenext
        loop
    oRSbn.close
    set oRSbn = nothing    
 %>   
    
    </SELECT></EM></STRONG></TD>
 
 
<SELECT style="WIDTH: 200px; HEIGHT: 125px" multiple size=2 id=selType name=selType> 
			<%call updateStores%>
	  </SELECT>
<br />
 
     <textarea name ="StoresList" style="width: 933px; height: 356px;" > <% call updateStores%>  </textarea>
    <br />
    C:\Inetpub\wwwroot\CHART\DMA_Chart_DataTable2.asp
</form>
 
</body>
</html>

Open in new window

Avatar of flfmmqp

ASKER

ignore last comment for now.
Avatar of flfmmqp

ASKER

Okay we are getting closer.  One small problem.  I lose my GEOID with the post.  I was getting it from the url like this before - http://ho000xd3840571/CHART/DMA_Chart_DataTable2.asp?id=517
strGEOID = Request.QueryString("id")

I need this for the query.  How can I keep it?
Avatar of flfmmqp

ASKER

Can I do something like this?
<form action="DMA_Chart_DataTable2.asp?id=" & "<% Request.QueryString("id") %>" method="post" name="frmDisplay" onSubmit="return submitForm()">
An easier solution...
Set your GEOID in a hidden field:  <input type=hidden value=<% =GEOID %> id=myGeoID />
On the refresh, in your sub, use:
Dim myGEOID
myGEOID = Request.Form("myGeoID")
and you're back in business.