Solved

Display Image on a condition

Posted on 2004-09-01
14
210 Views
Last Modified: 2012-06-27
Hello
I have some scanned signature images in a folder. My Asp Page has a Selection Box with some names.I want to display the scanned signature image in the ASP page depending on the user selecting the name.Also can I submit that image to another page through a form?
Thanks
Venu
0
Comment
Question by:venukalikota
  • 7
  • 6
14 Comments
 
LVL 4

Expert Comment

by:MrClean21
ID: 11952602
Hi venukalikota,

    You can do it with javascript like :

    <select id='Name' onchange='changeImage(this)'>
    ...
    </select>

    <script>
    function changeImage(elem) {
        sign = document.getElementById("signature");
        sign.src = "http://www.com/images/" + elem.value() + ".jpg";
    }
    </script>

    To pass the value to another page, just set the value of an hidden field to the selected name.

MrClean
0
 

Author Comment

by:venukalikota
ID: 11954146
MrClean21
Do you know how to do this in VbScript? If i use the above code iam getting the error "Object does not support this property or method" when I select a name from the select box
0
 
LVL 4

Expert Comment

by:MrClean21
ID: 11954855
Sorry,

Here's the good one..

 function changeImage(elem) {
        sign = document.getElementById("signature");
        sign.src = "http://www.com/images/" + elem.value + ".jpg";
    }

in VBScript, it looks like this :

 function changeImage(elem)
        sign = document.getElementById("signature");
        sign.src = "http://www.com/images/" + elem.value + ".jpg";
 end function
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:venukalikota
ID: 11955404
Gives the error
Char: 2
Error: Object does n't support this property or method: 'elem.value'
code: 0

Further help would be appreciated
Thanks
0
 
LVL 4

Expert Comment

by:MrClean21
ID: 11955923
venukalikota,

using vbscript, you should reference the function like

<select id='Name' onchange='changeImage(me)'>


 function changeImage(elem)
        set sign = document.getElementById("signature")
        sign.src = "http://www.com/images/" + elem.value + ".jpg"
 end function

with an image with an id of signature like :

<img id="signature" src="blank.jpg">
0
 

Author Comment

by:venukalikota
ID: 11956346
Image tag has the id ="signature". That does n't work
0
 
LVL 4

Expert Comment

by:MrClean21
ID: 11957215
here's the complete test page that works for me :

<html>
<body>
<script language="vbscript">
function test(elem)

   msgbox elem.value

    set sign = document.getElementById("signature")
    sign.src = "http://www.com/images/" + elem.value + ".jpg"

end function
</script>

<select id="sel" onchange="test(me)">
      <option></option>
      <option value="1">1</option>
      <option value="2">3</option>
      <option value="3">4</option>
</select>

<img id="signature" src="">
</body>
</html>
0
 

Author Comment

by:venukalikota
ID: 11957829
My code looks like this and does not seem to work. Getting Type Mismatch error.it will not display the msgbox. If i remove the signature it gives the error "object required: 'sign' ". I have also tried using elem.value. It gives the error "object does not support this method or property: 'elem.value'

<%
Function getSupName()
      rs.Open cn.Execute("SELECT RFullName, RFirst, RLast FROM Resources WHERE RInactive = 0 AND (InstSup = 1) AND (EntityCode = 'SE')ORDER BY RFullName")  
      image = CStr(rs.Fields("RLast"))
    Response.Write("<select id=InstSupName name=InstSupName onchange='changeImage(image)' title='Select Supervisor' style='FONT-FAMILY: verdana'>")
      Do Until rs.EOF
      Response.Write("<option value='" & rs.Fields("RFullName") & "'>" & rs.Fields("RFullName") & "</option>")
      rs.moveNext
      Loop
      Response.Write("</select>")
End Function
%>

<html>
<head>
<script ID="clientEventHandlersVBS" LANGUAGE="vbscript">
<!--
Function changeImage(elem)
msgbox elem
sign = document.getElementById("signature")
sign.src = "../ASP/" + elem + ".bmp"
End Function
-->
</script>

</head>
<form id="FORM1" method="post" name="FORM1">
<body>
<table align="center" border="0" cellPadding="1" cellSpacing="1" width="100%" height="25%" valign="center" background tabIndex="0" >
<tr>
          <td colSpan="2">
            <p align="left">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Installation REP:
                  <%=getSupName()%>
                </p><td colSpan="2">
                <img id="signature" name="signature" src="../ASP/Chris.bmp" height=50 width=200>
                </td>
        </tr>
</table>
</body>
</form>
</html>
0
 
LVL 4

Accepted Solution

by:
MrClean21 earned 250 total points
ID: 11957889
Hi,

This code should work:

<%
Function getSupName()
     rs.Open cn.Execute("SELECT RFullName, RFirst, RLast FROM Resources WHERE RInactive = 0 AND (InstSup = 1) AND (EntityCode = 'SE')ORDER BY RFullName")  
     image = CStr(rs.Fields("RLast"))
    Response.Write("<select id=InstSupName name=InstSupName onchange='changeImage(me)' title='Select Supervisor' style='FONT-FAMILY: verdana'>")
     Do Until rs.EOF
     Response.Write("<option value='" & rs.Fields("RFullName") & "'>" & rs.Fields("RFullName") & "</option>")
     rs.moveNext
     Loop
     Response.Write("</select>")
End Function
%>

<html>
<head>
<script ID="clientEventHandlersVBS" LANGUAGE="vbscript">
<!--
Function changeImage(elem)
msgbox elem.value
sign = document.getElementById("signature")
sign.src = "../ASP/" + elem + ".bmp"
End Function
-->
</script>

</head>
<form id="FORM1" method="post" name="FORM1">
<body>
<table align="center" border="0" cellPadding="1" cellSpacing="1" width="100%" height="25%" valign="center" background tabIndex="0" >
<tr>
          <td colSpan="2">
            <p align="left">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Installation REP:
               <%=getSupName()%>
              </p><td colSpan="2">
              <img id="signature" name="signature" src="../ASP/Chris.bmp" height=50 width=200>
              </td>
        </tr>
</table>
</body>
</form>
</html>


You must send the dropdown to the function.

MrClean
0
 

Author Comment

by:venukalikota
ID: 11958050
I changed the code the msgbox displays correctly but
Still gives the error "Object Required: 'sign' ". I think it is some how not considering the signature as an object on the form.
0
 
LVL 4

Expert Comment

by:kssaran
ID: 11960204
This works fine

<%
      strConn = "Provider=SQLOLEDB; "
      strConn = strConn & "Data Source=Atlas; "
      strConn = strConn & "Initial Catalog=tms; "
      strConn = strConn & "User Id=leaveuser; "
      strConn = strConn & "Password=userleave"
set cn = server.createobject("adodb.connection")
set objRs = server.createobject("adodb.connection")

Function getSupName()
       cn.open strConn
       strSql = "SELECT RFullName, RFirst, RLast FROM Resources WHERE RInactive = 0 AND (InstSup = 1) AND (EntityCode = 'SE') ORDER BY RFullName"
     set objRs = cn.Execute(strSql)
'     image = CStr(objRs.Fields("RLast"))
     Response.Write("<select id=InstSupName name=InstSupName onchange='changeImage(this)' title='Select Supervisor' style='FONT-FAMILY: verdana'>")
     Do Until objRs.EOF
            Response.Write("<option value='" & objRs.Fields("RFullName") & "'>" & objRs.Fields("RFullName") & "</option>")
          objRs.moveNext
     Loop
     Response.Write("</select>")
End Function
%>

<html>
<head>
<script LANGUAGE="javascript">
<!--
function changeImage(imgName)
 {
   if (document.images)
    {
      document['signature'].src= "../ASP/" + imgName.value + ".gif";
    }
 }
//-->
</script>

</head>
<form id="FORM1" method="post" name="FORM1">
<body>
<table align="center" border="0" cellPadding="1" cellSpacing="1" width="100%" height="25%" valign="center" background tabIndex="0" >
<tr>
          <td colSpan="2">
            <p align="left">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Installation REP:
               <%=getSupName()%>
              </p><td colSpan="2">
              <img id="signature" name="signature" src="../ASP/Chris.bmp" height=50 width=200>
              </td>
        </tr>
</table>
</body>
</form>
</html>
0
 
LVL 4

Expert Comment

by:MrClean21
ID: 11962807
Since the sign is the object of the image tag, you must use set :

set sign = document.getElementById("signature")
sign.src = "../ASP/" + elem + ".bmp"

MrClean
0
 

Author Comment

by:venukalikota
ID: 11972743
Thank you very much MrClean. Works everything fine now. I appreciate your great help.
0
 
LVL 4

Expert Comment

by:MrClean21
ID: 11972751
It's been a pleasure to help you.
0

Featured Post

Secure Your Active Directory - April 20, 2017

Active Directory plays a critical role in your company’s IT infrastructure and keeping it secure in today’s hacker-infested world is a must.
Microsoft published 300+ pages of guidance, but who has the time, money, and resources to implement? Register now to find an easier way.

Question has a verified solution.

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

I recently decide that I needed a way to make my pages scream on the net.   While searching around how I can accomplish this I stumbled across a great article that stated "minimize the server requests." I got to thinking, hey, I use more than one…
Have you ever needed to get an ASP script to wait for a while? I have, just to let something else happen. Or in my case, to allow other stuff to happen while I was murdering my MySQL database with an update. The Original Issue This was written…
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…

696 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