Display Image on a condition

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
venukalikotaAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
MrClean21Connect With a Mentor Commented:
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
 
MrClean21Commented:
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
 
venukalikotaAuthor Commented:
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
Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

 
MrClean21Commented:
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
 
venukalikotaAuthor Commented:
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
 
MrClean21Commented:
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
 
venukalikotaAuthor Commented:
Image tag has the id ="signature". That does n't work
0
 
MrClean21Commented:
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
 
venukalikotaAuthor Commented:
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
 
venukalikotaAuthor Commented:
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
 
kssaranCommented:
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
 
MrClean21Commented:
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
 
venukalikotaAuthor Commented:
Thank you very much MrClean. Works everything fine now. I appreciate your great help.
0
 
MrClean21Commented:
It's been a pleasure to help you.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.