<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" version="2.0">
  <channel>
    <title>Paul Mrozowski's Blog - Javascript</title>
    <link>http://www.rcs-solutions.com/blog/</link>
    <description>A day in the life (of a developer)</description>
    <language>en-us</language>
    <copyright>Paul Mrozowski / RCS Solutions, Inc.</copyright>
    <lastBuildDate>Sat, 20 Nov 2010 02:06:32 GMT</lastBuildDate>
    <generator>newtelligence dasBlog 2.0.7226.0</generator>
    <managingEditor>paulm@rcs-solutions.com</managingEditor>
    <webMaster>paulm@rcs-solutions.com</webMaster>
    <item>
      <trackback:ping>http://www.rcs-solutions.com/blog/Trackback.aspx?guid=59948bb3-a579-4698-a535-e7d8ea4e58e6</trackback:ping>
      <pingback:server>http://www.rcs-solutions.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.rcs-solutions.com/blog/PermaLink,guid,59948bb3-a579-4698-a535-e7d8ea4e58e6.aspx</pingback:target>
      <dc:creator>Paul Mrozowski</dc:creator>
      <wfw:comment>http://www.rcs-solutions.com/blog/CommentView,guid,59948bb3-a579-4698-a535-e7d8ea4e58e6.aspx</wfw:comment>
      <wfw:commentRss>http://www.rcs-solutions.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=59948bb3-a579-4698-a535-e7d8ea4e58e6</wfw:commentRss>
      <slash:comments>2</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <script type="text/javascript" src="/scripts/shCore.js">
        </script>
        <script type="text/javascript" src="/scripts/shBrushVFP.js">
        </script>
        <link rel="stylesheet" type="text/css" href="/styles/shCore.css" />
        <link rel="stylesheet" type="text/css" href="/styles/shThemeDefault.css" />
        <p>
While I was originally planning my jQuery for VFP developer session for South West
Fox, I had planning on showing all of the demos hosted inside of a browser hosted
in a VFP form (which I did). I also planned on having a link available on each page
which would slide out color-coded samples of the code actually running in the page.
As part of that, I created a syntax highlighter brush for VFP to work with Alex Gorbatchev’s
SynaxHighlighter (since none seemed to be available) – it’s a Javascript based syntax
highlighter that lets you embed code samples in things like blog pages and it will
color-code the syntax. I ended up deciding that it didn’t really work too well in
the context of a session, so I scrapped that portion of my demos. 
</p>
        <p>
You can download it from <a href="http://www.rcs-solutions.com/Download.ashx?File=shBrushVFP.js">here</a></p>
        <p>
 <script type="text/javascript">
		SyntaxHighlighter.all();
	</script><script type="syntaxhighlighter" class="brush: vfp"><![CDATA[
DEFINE CLASS SampleCode AS Custom
   oConfig = NULL
   cLastError = ""
   lConnected = .F.
   ******************************************************************
   *  FUNCTION NAME: Init
   *	
   *  AUTHOR, DATE:
   *	  Paul Mrozowski, 11/18/2010  
   *  PROCEDURE DESCRIPTION:
   *	  Set things up.
   *  INPUT PARAMETERS:
   *	  None
   *  OUTPUT PARAMETERS:
   *	  None
   ******************************************************************
   FUNCTION Init()      
      This.OpenTables()
      This.GetConfig()
   ENDFUNC

ENDDEFINE
]]></script>Alex’s
site includes more information about use – just make sure you reference the new brush
from within your webpage:
</p>
        <p>
&lt;script type="text/javascript" src="/scripts/shBrushVFP.js"&gt;&lt;/script&gt;
</p>
        <p>
 
</p>
        <p>
 
</p>
        <p>
          <strong>Links</strong>
        </p>
        <p>
          <a title="http://alexgorbatchev.com/SyntaxHighlighter/" href="http://alexgorbatchev.com/SyntaxHighlighter/">http://alexgorbatchev.com/SyntaxHighlighter/</a>
          <br />
          <a href="http://www.rcs-solutions.com/Download.ashx?File=shBrushVFP.js">http://www.rcs-solutions.com/Download.ashx?File=shBrushVFP.js</a>
        </p>
        <img width="0" height="0" src="http://www.rcs-solutions.com/blog/aggbug.ashx?id=59948bb3-a579-4698-a535-e7d8ea4e58e6" />
      </body>
      <title>Syntax Highlighter Brush for VFP</title>
      <guid isPermaLink="false">http://www.rcs-solutions.com/blog/PermaLink,guid,59948bb3-a579-4698-a535-e7d8ea4e58e6.aspx</guid>
      <link>http://www.rcs-solutions.com/blog/2010/11/20/SyntaxHighlighterBrushForVFP.aspx</link>
      <pubDate>Sat, 20 Nov 2010 02:06:32 GMT</pubDate>
      <description>&lt;script type="text/javascript" src="/scripts/shCore.js"&gt;&lt;/script&gt;&lt;script type="text/javascript" src="/scripts/shBrushVFP.js"&gt;&lt;/script&gt;
&lt;link rel="stylesheet" type="text/css" href="/styles/shCore.css" /&gt;
&lt;link rel="stylesheet" type="text/css" href="/styles/shThemeDefault.css" /&gt;
&lt;p&gt;
While I was originally planning my jQuery for VFP developer session for South West
Fox, I had planning on showing all of the demos hosted inside of a browser hosted
in a VFP form (which I did). I also planned on having a link available on each page
which would slide out color-coded samples of the code actually running in the page.
As part of that, I created a syntax highlighter brush for VFP to work with Alex Gorbatchev’s
SynaxHighlighter (since none seemed to be available) – it’s a Javascript based syntax
highlighter that lets you embed code samples in things like blog pages and it will
color-code the syntax. I ended up deciding that it didn’t really work too well in
the context of a session, so I scrapped that portion of my demos. 
&lt;/p&gt;
&lt;p&gt;
You can download it from &lt;a href="http://www.rcs-solutions.com/Download.ashx?File=shBrushVFP.js"&gt;here&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
&amp;#160;&lt;script type="text/javascript"&gt;
		SyntaxHighlighter.all();
	&lt;/script&gt;
&lt;script type="syntaxhighlighter" class="brush: vfp"&gt;&lt;![CDATA[
DEFINE CLASS SampleCode AS Custom
   oConfig = NULL
   cLastError = ""
   lConnected = .F.
   ******************************************************************
   *  FUNCTION NAME: Init
   *	
   *  AUTHOR, DATE:
   *	  Paul Mrozowski, 11/18/2010  
   *  PROCEDURE DESCRIPTION:
   *	  Set things up.
   *  INPUT PARAMETERS:
   *	  None
   *  OUTPUT PARAMETERS:
   *	  None
   ******************************************************************
   FUNCTION Init()      
      This.OpenTables()
      This.GetConfig()
   ENDFUNC

ENDDEFINE
]]&gt;&lt;/script&gt;Alex’s
site includes more information about use – just make sure you reference the new brush
from within your webpage:
&lt;/p&gt;
&lt;p&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;/scripts/shBrushVFP.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&lt;/p&gt;
&lt;p&gt;
&amp;#160;
&lt;/p&gt;
&lt;p&gt;
&amp;#160;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Links&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;a title="http://alexgorbatchev.com/SyntaxHighlighter/" href="http://alexgorbatchev.com/SyntaxHighlighter/"&gt;http://alexgorbatchev.com/SyntaxHighlighter/&lt;/a&gt;
&lt;br /&gt;
&lt;a href="http://www.rcs-solutions.com/Download.ashx?File=shBrushVFP.js"&gt;http://www.rcs-solutions.com/Download.ashx?File=shBrushVFP.js&lt;/a&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.rcs-solutions.com/blog/aggbug.ashx?id=59948bb3-a579-4698-a535-e7d8ea4e58e6" /&gt;</description>
      <comments>http://www.rcs-solutions.com/blog/CommentView,guid,59948bb3-a579-4698-a535-e7d8ea4e58e6.aspx</comments>
      <category>Javascript</category>
    </item>
    <item>
      <trackback:ping>http://www.rcs-solutions.com/blog/Trackback.aspx?guid=232647a7-8706-4a10-8a79-d08df3a3e6fa</trackback:ping>
      <pingback:server>http://www.rcs-solutions.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.rcs-solutions.com/blog/PermaLink,guid,232647a7-8706-4a10-8a79-d08df3a3e6fa.aspx</pingback:target>
      <dc:creator>Paul Mrozowski</dc:creator>
      <wfw:comment>http://www.rcs-solutions.com/blog/CommentView,guid,232647a7-8706-4a10-8a79-d08df3a3e6fa.aspx</wfw:comment>
      <wfw:commentRss>http://www.rcs-solutions.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=232647a7-8706-4a10-8a79-d08df3a3e6fa</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Imagine this scenario: You want to create a simple user control that you can use in
a few web pages. It incorporates a few JavaScript functions that change the UI slightly
during a mouse click; pretty standard stuff. The script isn't particularly useful
in other controls, so putting it into a common library doesn't make much sense. It
could be broken out into it's own library, which can at least be cached by a browser.
But that introduces another dependency in the hosting page - you have to remember
to include a reference to this JS library before things will work. The easiest thing
to do would be to just include the JS code inside the user control itself (I'm skipping
the option of embedding it as a resource; maybe another day). Including the code in
the control is pretty simple and seamless. Until you drop two instances of the same
control on page. What you'll find (like I did) is that your JS code is now rendered
one time for each control. That's not very cool. In fact, you run into this same issue
even if you decide to move the code into it's own library - you end up with more than
one reference to the library. 
</p>
        <p>
  
</p>
        <p>
A relatively simple way around all this is the ClientScriptManager class that is available
hanging off the Page object as ClientScript. It lets you register JS code to be rendered
into the main page. You can also check for the existence of the registered code (to
keep from registering it more than once, regardless of the number of controls on the
page). In my case, since I'm just embedding the code right in the page, there are
only two methods required for this: IsClientScriptBlockRegistered and RegisterClientScriptBlock. 
</p>
        <p>
  
</p>
        <p>
The routines use the object type and the passed in name as a key; if you don't pass
it into IsClientScriptBlockRegistered (or the other variants) the routines will use
the Page's type. I'd suggest always passing in something besides the page type (for
example, the user control type). This will keep you from running into conflicts if
you happen to use the same registration name (although things will still break if
you picked the same JS function names). 
</p>
        <p>
  
</p>
        <p>
Here's what that might look like:
</p>
        <br />
        <div style="font-size: 10pt; background: white; color: black; font-family: consolas, courier new">
          <p style="margin: 0px">
            <span style="color: blue">if</span> (!Page.ClientScript.IsClientScriptBlockRegistered(<span style="color: blue">typeof</span>(<span style="color: #2b91af">WebmailAddressBookBizObj</span>), <span style="background: #e5e5e5">"ToggleCheck"</span>))
</p>
          <p style="margin: 0px">
{
</p>
          <p style="margin: 0px">
    <span style="color: blue">string</span> js = <span style="color: #a31515">@"</span></p>
          <p style="margin: 0px">
            <span style="color: #a31515">                 
function ToggleCheck(node)</span>
          </p>
          <p style="margin: 0px">
            <span style="color: #a31515">                 
{</span>
          </p>
          <p style="margin: 0px">
            <span style="color: #a31515">                   
if (node.Checked)</span>
          </p>
          <p style="margin: 0px">
            <span style="color: #a31515">                       
node.UnCheck();</span>
          </p>
          <p style="margin: 0px">
            <span style="color: #a31515">                   
else</span>
          </p>
          <p style="margin: 0px">
            <span style="color: #a31515">                       
node.Check();</span>
          </p>
          <p style="margin: 0px">
            <span style="color: #a31515">                 
}"</span>;
</p>
          <p style="margin: 0px">
 
</p>
          <p style="margin: 0px">
    Page.ClientScript.RegisterClientScriptBlock(<span style="color: blue">typeof</span>(<span style="color: #2b91af">WebmailAddressBookBizObj</span>), <span style="background: #e5e5e5">"ToggleCheck"</span>,
js, <span style="color: blue">true</span>);
</p>
          <p style="margin: 0px">
}
</p>
        </div>
        <img width="0" height="0" src="http://www.rcs-solutions.com/blog/aggbug.ashx?id=232647a7-8706-4a10-8a79-d08df3a3e6fa" />
      </body>
      <title>Javascript in User Controls</title>
      <guid isPermaLink="false">http://www.rcs-solutions.com/blog/PermaLink,guid,232647a7-8706-4a10-8a79-d08df3a3e6fa.aspx</guid>
      <link>http://www.rcs-solutions.com/blog/2007/10/27/JavascriptInUserControls.aspx</link>
      <pubDate>Sat, 27 Oct 2007 20:07:56 GMT</pubDate>
      <description>&lt;p&gt;
Imagine this scenario: You want to create a simple user control that you can use in
a few web pages. It incorporates a few JavaScript functions that change the UI slightly
during a mouse click; pretty standard stuff. The script isn't particularly useful
in other controls, so putting it into a common library doesn't make much sense. It
could be broken out into it's own library, which can at least be cached by a browser.
But that introduces another dependency in the hosting page - you have to remember
to include a reference to this JS library before things will work. The easiest thing
to do would be to just include the JS code inside the user control itself (I'm skipping
the option of embedding it as a resource; maybe another day). Including the code in
the control is pretty simple and seamless. Until you drop two instances of the same
control on page. What you'll find (like I did) is that your JS code is now rendered
one time for each control. That's not very cool. In fact, you run into this same issue
even if you decide to move the code into it's own library - you end up with more than
one reference to the library. 
&lt;p&gt;
&amp;nbsp; 
&lt;p&gt;
A relatively simple way around all this is the ClientScriptManager class that is available
hanging off the Page object as ClientScript. It lets you register JS code to be rendered
into the main page. You can also check for the existence of the registered code (to
keep from registering it more than once, regardless of the number of controls on the
page). In my case, since I'm just embedding the code right in the page, there are
only two methods required for this: IsClientScriptBlockRegistered and RegisterClientScriptBlock. 
&lt;p&gt;
&amp;nbsp; 
&lt;p&gt;
The routines use the object type and the passed in name as a key; if you don't pass
it into IsClientScriptBlockRegistered (or the other variants) the routines will use
the Page's type. I'd suggest always passing in something besides the page type (for
example, the user control type). This will keep you from running into conflicts if
you happen to use the same registration name (although things will still break if
you picked the same JS function names). 
&lt;p&gt;
&amp;nbsp; 
&lt;p&gt;
Here's what that might look like:
&lt;/p&gt;
&lt;br&gt;
&lt;div style="font-size: 10pt; background: white; color: black; font-family: consolas, courier new"&gt;
&lt;p style="margin: 0px"&gt;
&lt;span style="color: blue"&gt;if&lt;/span&gt; (!Page.ClientScript.IsClientScriptBlockRegistered(&lt;span style="color: blue"&gt;typeof&lt;/span&gt;(&lt;span style="color: #2b91af"&gt;WebmailAddressBookBizObj&lt;/span&gt;), &lt;span style="background: #e5e5e5"&gt;"ToggleCheck"&lt;/span&gt;))
&lt;/p&gt;
&lt;p style="margin: 0px"&gt;
{
&lt;/p&gt;
&lt;p style="margin: 0px"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue"&gt;string&lt;/span&gt; js = &lt;span style="color: #a31515"&gt;@"&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px"&gt;
&lt;span style="color: #a31515"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
function ToggleCheck(node)&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px"&gt;
&lt;span style="color: #a31515"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
{&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px"&gt;
&lt;span style="color: #a31515"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
if (node.Checked)&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px"&gt;
&lt;span style="color: #a31515"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
node.UnCheck();&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px"&gt;
&lt;span style="color: #a31515"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
else&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px"&gt;
&lt;span style="color: #a31515"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
node.Check();&lt;/span&gt;
&lt;/p&gt;
&lt;p style="margin: 0px"&gt;
&lt;span style="color: #a31515"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
}"&lt;/span&gt;;
&lt;/p&gt;
&lt;p style="margin: 0px"&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p style="margin: 0px"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Page.ClientScript.RegisterClientScriptBlock(&lt;span style="color: blue"&gt;typeof&lt;/span&gt;(&lt;span style="color: #2b91af"&gt;WebmailAddressBookBizObj&lt;/span&gt;), &lt;span style="background: #e5e5e5"&gt;"ToggleCheck"&lt;/span&gt;,
js, &lt;span style="color: blue"&gt;true&lt;/span&gt;);
&lt;/p&gt;
&lt;p style="margin: 0px"&gt;
}
&lt;/p&gt;
&lt;/div&gt;
&lt;img width="0" height="0" src="http://www.rcs-solutions.com/blog/aggbug.ashx?id=232647a7-8706-4a10-8a79-d08df3a3e6fa" /&gt;</description>
      <comments>http://www.rcs-solutions.com/blog/CommentView,guid,232647a7-8706-4a10-8a79-d08df3a3e6fa.aspx</comments>
      <category>ASP.NET</category>
      <category>Javascript</category>
    </item>
    <item>
      <trackback:ping>http://www.rcs-solutions.com/blog/Trackback.aspx?guid=d2bce8e6-6a4b-432d-ab48-47c3e3be83ec</trackback:ping>
      <pingback:server>http://www.rcs-solutions.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.rcs-solutions.com/blog/PermaLink,guid,d2bce8e6-6a4b-432d-ab48-47c3e3be83ec.aspx</pingback:target>
      <dc:creator>Paul Mrozowski</dc:creator>
      <wfw:comment>http://www.rcs-solutions.com/blog/CommentView,guid,d2bce8e6-6a4b-432d-ab48-47c3e3be83ec.aspx</wfw:comment>
      <wfw:commentRss>http://www.rcs-solutions.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=d2bce8e6-6a4b-432d-ab48-47c3e3be83ec</wfw:commentRss>
      <title>Accessing ASP.NET generated controls from Javascript</title>
      <guid isPermaLink="false">http://www.rcs-solutions.com/blog/PermaLink,guid,d2bce8e6-6a4b-432d-ab48-47c3e3be83ec.aspx</guid>
      <link>http://www.rcs-solutions.com/blog/2007/10/19/AccessingASPNETGeneratedControlsFromJavascript.aspx</link>
      <pubDate>Fri, 19 Oct 2007 02:36:20 GMT</pubDate>
      <description>&lt;p&gt;
This is one of those things that's really easy to do, but not particularly clear the
first time you run across it (well, it wasn't clear to me at least). There are times
when you need to access ASP.NET created controls from within your JavaScript code.
In the ASPX page you may have set the ID of a button control to "btnAdd". However,
when you run the page the control name gets mangled into something like ctl00_ContentPlaceHolder1_btnAdd.
In order to reference it in your JavaScript, you need that mangled name. To get it,
just embed something like this in your JavaScript code:
&lt;/p&gt;
&lt;p&gt;
&lt;font size="2"&gt;&lt;font face="Consol"&gt;&lt;font color="#0000ff"&gt;function&lt;/font&gt; DoSomething()&lt;br&gt;
{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#0000ff"&gt;var&lt;/font&gt; addButton = document.getElementById('&amp;lt;%=
btnAdd.ClientID %&amp;gt;');&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#0000ff"&gt;if&lt;/font&gt; (addButton)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert('&amp;lt;%= btnAdd.ClientID %&amp;gt;');&lt;br&gt;
}&lt;/font&gt;&lt;/font&gt;
&lt;/p&gt;
&lt;font face="Consolas" size="2"&gt;&lt;span style="font-size: 10pt; font-family: consolas"&gt;
&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;
&lt;/span&gt;&lt;/font&gt; 
&lt;p&gt;
When the page is run, the ASP.NET eval engine will replace the ID with the correct
one.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.rcs-solutions.com/blog/aggbug.ashx?id=d2bce8e6-6a4b-432d-ab48-47c3e3be83ec" /&gt;</description>
      <comments>http://www.rcs-solutions.com/blog/CommentView,guid,d2bce8e6-6a4b-432d-ab48-47c3e3be83ec.aspx</comments>
      <category>ASP.NET</category>
      <category>Javascript</category>
    </item>
  </channel>
</rss>