Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > ASP .Net > Newbie: AJAX not working

Reply
Thread Tools

Newbie: AJAX not working

 
 
Mark B
Guest
Posts: n/a
 
      06-24-2008
This is my first try at using AJAX. I want the calendars to be enabled if
the user checks CheckBox1. It works OK for a normal all page refresh but
once I introduced the AJAX code it stopped working. Any ideas?


<%@ Page Language="VB" AutoEventWireup="false"
CodeFile="default-ajax.aspx.vb" Inherits="pages_verify_groups_Default"
Debug="true" %>

<!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 runat="server">
<title>Untitled Page</title>
<style type="text/css">
.style1
{
width: 950px;
}
.style2
{
height: 36px;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<p>
&nbsp;</p>
<table align="center" class="style1" width="950">
<tr>
<td>
Account</td>
</tr>
<tr>
<td>
Navigation Bar</td>
</tr>
<tr>
<td>
&nbsp;</td>
</tr>
<tr>
<td>
<h2>
My Account</h2>
</td>
</tr>
<tr>
<td height="0">
<h3>
Settings</h3>
</td>
</tr>
<tr>
<td height="0">
<h4>
&nbsp;</h4>
</td>
</tr>
<tr>
<td>
<table>

<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>


<tr>
<td colspan="4" class="style2">
<asp:CheckBox ID="CheckBox1" runat="server"
Text=" Activate holiday range" />
</td>
</tr>

<asp:UpdatePanel ID="UpdatePanel1"
runat="server">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="CheckBox1"
EventName="CheckedChanged"/>
</Triggers>

<ContentTemplate>
<tr>
<td>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;</td>
<td>
Range from:</td>
<td>
&nbsp;&nbsp; &nbsp;</td>
<td>
To:</td>
</tr>
<tr>
<td>
&nbsp;</td>
<td>
<asp:Calendar ID="Calendar1" runat="server"
BackColor="White"
BorderColor="Black" BorderStyle="Solid"
CellSpacing="1" Enabled="False"
Font-Names="Verdana" Font-Size="9pt"
ForeColor="Black" Height="250px"
NextPrevFormat="ShortMonth" Width="330px">
<SelectedDayStyle BackColor="#333399"
ForeColor="White" />
<TodayDayStyle BackColor="#999999"
ForeColor="White" />
<OtherMonthDayStyle ForeColor="#999999" />
<DayStyle BackColor="#CCCCCC" />
<NextPrevStyle Font-Bold="True"
Font-Size="8pt" ForeColor="White" />
<DayHeaderStyle Font-Bold="True"
Font-Size="8pt" ForeColor="#333333"
Height="8pt" />
<TitleStyle BackColor="#333399"
BorderStyle="Solid" Font-Bold="True"
Font-Size="12pt" ForeColor="White"
Height="12pt" />
</asp:Calendar>
</td>
<td>
&nbsp;</td>
<td>
<asp:Calendar ID="Calendar2" runat="server"
BackColor="White"
BorderColor="Black" BorderStyle="Solid"
CellSpacing="1" Enabled="False"
Font-Names="Verdana" Font-Size="9pt"
ForeColor="Black" Height="250px"
NextPrevFormat="ShortMonth" Width="330px">
<SelectedDayStyle BackColor="#333399"
ForeColor="White" />
<TodayDayStyle BackColor="#999999"
ForeColor="White" />
<OtherMonthDayStyle ForeColor="#999999" />
<DayStyle BackColor="#CCCCCC" />
<NextPrevStyle Font-Bold="True"
Font-Size="8pt" ForeColor="White" />
<DayHeaderStyle Font-Bold="True"
Font-Size="8pt" ForeColor="#333333"
Height="8pt" />
<TitleStyle BackColor="#333399"
BorderStyle="Solid" Font-Bold="True"
Font-Size="12pt" ForeColor="White"
Height="12pt" />
</asp:Calendar>
</td>
</tr>
<tr>
<td>
&nbsp;</td>
<td>
&nbsp;</td>
<td>
&nbsp;</td>
<td>
&nbsp;</td>
</tr>
<tr>
<td colspan="4">
<asp:CheckBox ID="CheckBox2" runat="server"
Text=" Comments" AutoPostBack="True" />
</td>
</tr>
<tr>
<td class="style3">
</td>
<td class="style3" colspan="3">
<asp:TextBox ID="TextBox1" runat="server"
Height="181px"
TextMode="MultiLine" Width="686px"
Enabled="False"></asp:TextBox>
</td>
</tr>

</ContentTemplate>
</asp:UpdatePanel>
<tr>
<td>
&nbsp;</td>
<td>
&nbsp;</td>
<td>
&nbsp;</td>
<td>
&nbsp;</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
&nbsp;</td>
</tr>
</table>
</form>
</body>
</html>


Imports System.Data.SqlClient
Imports System.Data

Partial Class pages_verify_groups_Default
Inherits System.Web.UI.Page


Protected Sub CheckBox1_CheckedChanged(ByVal sender As Object, ByVal e
As System.EventArgs) Handles CheckBox1.CheckedChanged
fEnableMode()
End Sub

Function fEnableMode() As Boolean

'Enable or disable controls
Select Case CheckBox1.Checked
Case True
Calendar1.Enabled = True
Calendar2.Enabled = True
CheckBox2.Enabled = True
Case Else
Calendar1.Enabled = False
Calendar2.Enabled = False
CheckBox2.Enabled = False
End Select

TextBox1.Enabled = True
If CheckBox2.Enabled = False Or CheckBox2.Checked = False Then
TextBox1.Enabled = False
End If

End Function


Protected Sub CheckBox2_CheckedChanged(ByVal sender As Object, ByVal e
As System.EventArgs) Handles CheckBox2.CheckedChanged
fEnableMode()
End Sub

Protected Sub Calendar1_SelectionChanged(ByVal sender As Object, ByVal e
As System.EventArgs) Handles Calendar1.SelectionChanged
fCalendarChange()
End Sub

Function fCalendarChange() As Boolean
Dim strStandardOutOfOfficeText As String
Dim strTo As String
Dim strEnd As String
strStandardOutOfOfficeText = "I am on holiday from "
strTo = " to "
strEnd = "."

Dim strNewOutOfOfficeText As String
'If Left(TextBox1.Text, Len(strStandardOutOfOfficeText)) =
strStandardOutOfOfficeText Or TextBox1.Text = "" Then
strNewOutOfOfficeText = strStandardOutOfOfficeText +
Calendar1.SelectedDate.ToLongDateString + strTo +
Calendar2.SelectedDate.ToLongDateString
TextBox1.Text = strNewOutOfOfficeText + Mid(TextBox1.Text,
Len(strNewOutOfOfficeText)) + strEnd
'End If

End Function

Protected Sub Calendar2_SelectionChanged(ByVal sender As Object, ByVal e
As System.EventArgs) Handles Calendar2.SelectionChanged
fCalendarChange()
End Sub
End Class









 
Reply With Quote
 
 
 
 
Steven Cheng [MSFT]
Guest
Posts: n/a
 
      06-24-2008
Hi Mark,

Based on your description, I've performed some test on my side. It seems
the CheckBox and Calender can work correctly with AJAX page(via
UpdatePanel). here is a very simple test page I've used.

==============aspx====================
<body>
<form id="form1" runat="server"><asp:ScriptManager ID="ScriptManager1"
runat="server" />

<asp:CheckBox ID="CheckBox1" runat="server" AutoPostBack="True"
Checked="true" />
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="CheckBox1"
EventName="CheckedChanged" />
</Triggers>
<ContentTemplate>

<br />
<br />
<br />
<asp:Calendar ID="Calendar1" runat="server"></asp:Calendar>
<br />
</ContentTemplate>
</asp:UpdatePanel>

<div>
</div>
</form>
</body>


=============code behind================

Protected Sub CheckBox1_CheckedChanged(ByVal sender As Object, ByVal e
As System.EventArgs) Handles CheckBox1.CheckedChanged
Calendar1.Enabled = CheckBox1.Checked

End Sub
======================================

I think the problem might be the ASP.NET AJAX application is not configured
correctly. Have you tried some other kind of AJAX postback(via updatepanel)
to see whether it works? Here is the web.config content of my test project,
you can also compare it with yours to see whether any configuration section
is different:

<<<<<<<<<< web.config <<<<<<<<
<?xml version="1.0"?>
<configuration>
<configSections>
<sectionGroup name="system.web.extensions"
type="System.Web.Configuration.SystemWebExtensions SectionGroup,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35">
<sectionGroup name="scripting"
type="System.Web.Configuration.ScriptingSectionGro up,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35">
<section name="scriptResourceHandler"
type="System.Web.Configuration.ScriptingScriptReso urceHandlerSection,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35" requirePermission="false"
allowDefinition="MachineToApplication"/>
<sectionGroup name="webServices"
type="System.Web.Configuration.ScriptingWebService sSectionGroup,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35">
<section name="jsonSerialization"
type="System.Web.Configuration.ScriptingJsonSerial izationSection,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35" requirePermission="false"
allowDefinition="Everywhere" />
<section name="profileService"
type="System.Web.Configuration.ScriptingProfileSer viceSection,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35" requirePermission="false"
allowDefinition="MachineToApplication" />
<section name="authenticationService"
type="System.Web.Configuration.ScriptingAuthentica tionServiceSection,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35" requirePermission="false"
allowDefinition="MachineToApplication" />
</sectionGroup>
</sectionGroup>
</sectionGroup>
</configSections>

<system.web>
<pages>
<controls>
<add tagPrefix="asp" namespace="System.Web.UI"
assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35"/>
</controls>
</pages>
<!--
Set compilation debug="true" to insert debugging
symbols into the compiled page. Because this
affects performance, set this value to true only
during development.
-->
<compilation debug="false">
<assemblies>
<add assembly="System.Web.Extensions, Version=1.0.61025.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</assemblies>
</compilation>

<httpHandlers>
<remove verb="*" path="*.asmx"/>
<add verb="*" path="*.asmx" validate="false"
type="System.Web.Script.Services.ScriptHandlerFact ory,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35"/>
<add verb="*" path="*_AppService.axd" validate="false"
type="System.Web.Script.Services.ScriptHandlerFact ory,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35"/>
<add verb="GET,HEAD" path="ScriptResource.axd"
type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
validate="false"/>
</httpHandlers>

<httpModules>
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35"/>
</httpModules>
</system.web>

<system.web.extensions>
<scripting>
<webServices>
<!-- Uncomment this line to customize maxJsonLength and add a custom
converter -->
<!--
<jsonSerialization maxJsonLength="500">
<converters>
<add name="ConvertMe" type="Acme.SubAcme.ConvertMeTypeConverter"/>
</converters>
</jsonSerialization>
-->
<!-- Uncomment this line to enable the authentication service.
Include requireSSL="true" if appropriate. -->
<!--
<authenticationService enabled="true" requireSSL = "true|false"/>
-->

<!-- Uncomment these lines to enable the profile service. To allow
profile properties to be retrieved
and modified in ASP.NET AJAX applications, you need to add each
property name to the readAccessProperties and
writeAccessProperties attributes. -->
<!--
<profileService enabled="true"
readAccessProperties="propertyname1,propertyname2"
writeAccessProperties="propertyname1,propertyname2 " />
-->
</webServices>
<!--
<scriptResourceHandler enableCompression="true" enableCaching="true"
/>
-->
</scripting>
</system.web.extensions>

<system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<modules>
<add name="ScriptModule" preCondition="integratedMode"
type="System.Web.Handlers.ScriptModule, System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</modules>
<handlers>
<remove name="WebServiceHandlerFactory-Integrated" />
<add name="ScriptHandlerFactory" verb="*" path="*.asmx"
preCondition="integratedMode"
type="System.Web.Script.Services.ScriptHandlerFact ory,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35"/>
<add name="ScriptHandlerFactoryAppServices" verb="*"
path="*_AppService.axd" preCondition="integratedMode"
type="System.Web.Script.Services.ScriptHandlerFact ory,
System.Web.Extensions, Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35"/>
<add name="ScriptResource" preCondition="integratedMode"
verb="GET,HEAD" path="ScriptResource.axd"
type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</handlers>
</system.webServer>
</configuration>

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

Sincerely,

Steven Cheng

Microsoft MSDN Online Support Lead


Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
http://www.velocityreviews.com/forums/(E-Mail Removed).

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscripti...ult.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscripti...t/default.aspx.
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.

--------------------
>From: "Mark B" <(E-Mail Removed)>
>Subject: Newbie: AJAX not working
>Date: Tue, 24 Jun 2008 17:12:16 +1200


>
>This is my first try at using AJAX. I want the calendars to be enabled if
>the user checks CheckBox1. It works OK for a normal all page refresh but
>once I introduced the AJAX code it stopped working. Any ideas?
>
>
><%@ Page Language="VB" AutoEventWireup="false"
>CodeFile="default-ajax.aspx.vb" Inherits="pages_verify_groups_Default"
>Debug="true" %>
>
><!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 runat="server">
> <title>Untitled Page</title>
> <style type="text/css">
> .style1
> {
> width: 950px;
> }
> .style2
> {
> height: 36px;
> }
> </style>
></head>
><body>
> <form id="form1" runat="server">
> <p>
> &nbsp;</p>
> <table align="center" class="style1" width="950">
> <tr>
> <td>
> Account</td>
> </tr>
> <tr>
> <td>
> Navigation Bar</td>
> </tr>
> <tr>
> <td>
> &nbsp;</td>
> </tr>
> <tr>
> <td>
> <h2>
> My Account</h2>
> </td>
> </tr>
> <tr>
> <td height="0">
> <h3>
> Settings</h3>
> </td>
> </tr>
> <tr>
> <td height="0">
> <h4>
> &nbsp;</h4>
> </td>
> </tr>
> <tr>
> <td>
> <table>
>
> <asp:ScriptManager ID="ScriptManager1" runat="server">
> </asp:ScriptManager>
>
>
> <tr>
> <td colspan="4" class="style2">
> <asp:CheckBox ID="CheckBox1" runat="server"
> Text=" Activate holiday range" />
> </td>
> </tr>
>
> <asp:UpdatePanel ID="UpdatePanel1"
>runat="server">
> <Triggers>
> <asp:AsyncPostBackTrigger ControlID="CheckBox1"
>EventName="CheckedChanged"/>
> </Triggers>
>
> <ContentTemplate>
> <tr>
> <td>
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;</td>
> <td>
> Range from:</td>
> <td>
> &nbsp;&nbsp; &nbsp;</td>
> <td>
> To:</td>
> </tr>
> <tr>
> <td>
> &nbsp;</td>
> <td>
>


 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
AJAX not working when using Session variables. =?Utf-8?B?U2hhd24gU2VzbmE=?= ASP .Net 6 05-31-2007 10:21 PM
ajax response not working on mozilla =?Utf-8?B?cGF0cmlja2RyZA==?= ASP .Net 2 02-16-2007 12:25 AM
AJAX IDE and AJAX TOOL--The Release of JoyiStar AJAX WebShop 3 Beta minnie Java 1 12-13-2006 06:29 AM
Ajax Atlas not working in User Control faiq Software 0 09-16-2006 07:28 AM
wifi not working on new hp, or not working after live update =?Utf-8?B?RHJhZ29ueA==?= Wireless Networking 1 10-01-2005 11:17 PM



Advertisments