Home     |     .Net Programming    |     cSharp Home    |     Sql Server Home    |     Javascript / Client Side Development     |     Ajax Programming

Ruby on Rails Development     |     Perl Programming     |     C Programming Language     |     C++ Programming     |     IT Jobs

Python Programming Language     |     Laptop Suggestions?    |     TCL Scripting     |     Fortran Programming     |     Scheme Programming Language


 
 
Cervo Technologies
The Right Source to Outsource

MS Dynamics CRM 3.0

C# Programming

Compilation error - user control


Hi,

I have a user control in which in have the following code :

<%@ Control Language="C#" AutoEventWireup="true"
CodeFile="RatingControl.ascx.cs" Inherits="UserControls_RatingControl"
%>
<script type="text/javascript">

function alterRating(rating)
{
    var i;
    var img = document.getElementById("<%=star"+i+".ClientID %>");
    for(i=1;i<=rating;i++)
    {
        var img = document.getElementById("<%=star"+i+".ClientID %>");
        img.src = "~/Images/StarOver.gif";
    }
    for(i=rating;i<=5;i++)
    {
        var img = document.getElementById("<%=star"+i+".ClientID %>");
       img.src = "~/Images/StarOff.gif";
    }

}

I'm getting a compilation error that says :

 ) expected

Line 11:     var img = document.getElementById("<%=star"+i+".ClientID
%>");

What is the problem ??

Thanks !!

On May 31, 10:31 am, Zeba <coolz@gmail.com> wrote:

<snip>

> What is the problem ??

It's not clear to me what you're trying to do. What do you want the
processed script to come out as? Bear in mind that "i" here is a
variable in the JavaScript, not in the .NET code.

(You might get more replies in the ASP.NET group, by the way.)

Jon

-----------------------------------------------Reply-----------------------------------------------

If I can guess what you are trying to do...
first of all, your i that you have within the <%= %> brackets is going
to refer to your codebehind variables (Not the javascript variable).
It almost seems like you are trying to use reflection or something and
get the ClientID of that item

First of all your javascript is referring to the variable i right
after you declare it but it has no value yet!

Maybe you could use an alternative approach of writing this in your
code behind

WriteScript() //Rough C# Code
{
   int i;
    HtmlControl img; // = Page.FindControl("star"+i); // i not
declared yet
    for(i=1;i<=rating;i++)
    {
        img = Page.FindControl("star"+i);
        img.src = "~/Images/StarOver.gif";
    }
    for(i=rating;i<=5;i++)
    {
// same thing here
//        var img = document.getElementById("<%=star"+i+".ClientID
%>");
//       img.src = "~/Images/StarOff.gif";
    }

}

// same thing here
//   var img = document.getElementById("<%=star"+i+".ClientID %>");

tada..

Or if you want to do it from javascript not codebehind, just modify
the above to do the following

REsponse.write("<script type='text/javascript'>");
then in the loop you can stick another Response.Write(...)
then end with Response.Write("</script>")

or alternatively, read about RegisterClientScript Here:
http://www.codeproject.com/aspnet/ClientServer.asp

Sameer Alibhai
Sharp Developer
http://www.SharpDeveloper.Net

On May 31, 5:31 am, Zeba <coolz@gmail.com> wrote:

Add to del.icio.us | Digg this | Stumble it | Powered by Megasolutions Inc