You are getting "error" because the parameter you use, the err parameter, is
a simple status indicator that gets set to a few general values like
timeout, success, or error.

In your case, use the function(xhr,err,e) function and try to print out
e.name and e.message

On 9/12/07, 0xCAFE <[EMAIL PROTECTED]> wrote:
>
>
> Here's what I tried.
>
> I have copied the code from my page and cleaned it up so I only have
> one form field and my ajax call.
>
> Here is the code :
>
> <!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>
>     <meta content="text/html; charset=ISO-8859-1" http-equiv="content-
> type" />
>     <title>Simple IE Ajax Test</title>
>
>     <script src="jquery.js" type="text/javascript"></script> <!--
> jQuery -->
>     <script src="firebug/firebug.js" type="text/javascript"></script>
> <!-- Firebug -->
>
>     <!-- AJAX Username Availability Script -->
>     <script type='text/javascript'>
>     <!--
>
>       $.ajaxSetup({timeout: 3000});
>
>       $(document).ready(function(){
>         // Execute the checkUsername on onBlur event
>         $("#txtUserName").blur(
>         function() {
>           checkUsername();
>         });
>       });
>
>
>       // This will check if the username is already used by another
> user.
>       function checkUsername() {
>
>           var username = "";
>           var previous_username = "";
>           var in_ajax;
>
>           // Removed Ajax result
>           $("#username_status").html("");
>
>           // If there is already a validation error, don't bother with
> username verification
>           if( $("#txtUserName").parent(".error").length > 0 )
>             return;
>
>           username = $("#txtUserName").val();
>
>           if ((previous_username != username) && (username != '') &&
> (in_ajax != 1)) {
>               in_ajax = 1;
>               $("#username_status").html("<img src='images/ajax/
> loading.gif' border='0' valign='middle' alt='Loading...' />");
>               try {
>                 $.ajax({
>                   type: "GET",
>                   data: {txtUserName: username},
>                   url: "http://server/AJAXCheckUsername.jsp?time="; +
> (new Date()).getTime(),
>                   timeout: 5000,
>                   success: function(data) {
>                              in_ajax = 0;
>                              if( data == "Available" ) {
>                                $("#username_status").html('<img
> src="images/ajax/accept.png" border="0" alt="Available"
> style="vertical-align: middle;" /> Username is Available!');
>                                $
> ("#txtUserName").parent().removeClass("error");
>                              } else if( data == "Not Available" ) {
>                                $("#username_status").html('<img
> src="images/ajax/cross.png" border="0" alt="Not Available"
> style="vertical-align: middle;" /> Sorry.  This username is already
> taken.');
>                                $
> ("#txtUserName").parent().addClass("error");
>                              } else {
>                                $("#username_status").html('<img
> src="images/ajax/error.gif" border="0" alt="Error" style="vertical-
> align: middle;" /> An Error Has OOOccured!');
>                                $
> ("#txtUserName").parent().addClass("error");
>                              }
>                            },
>                   //error: function(xhr,err,e) {
>                   //          //$("#username_status").html('An Error
> has occured. Please retry.');
>                   //          $("#username_status").html('Error : ' +
> err);
>                   //        console.log("Error : " + err );
>                   //       }
>
>                  error: function(object, msg) {
>                             //$("#username_status").html('An Error has
> occured. Please retry.');
>                             $("#username_status").html('Error : ' +
> msg);
>                          }
>                 });
>               } catch(error) {
>                 null;
>               }
>           }
>
>           previous_username = username;
>       }
>     //-->
>     </script>
>     <!-- END AJAX Username Availability Script -->
>
>   </head>
>
>
>   <body>
>     Simple IE Ajax Test<br />
>
>   <form id="frmGeneral" name="frmGeneral" action="" method="post"
> class="uniForm">
>
>       <fieldset class="inlineLabels">
>         <legend>Login Information</legend>
>
>         <div class="ctrlHolder">
>
>           <label for="txtUserName"><em>*</em> Username</label>
>           <input name="txtUserName" id="txtUserName" value=""
> size="20" maxlength="25" type="text"/>
>           <div class="rightSection" id="username_status">
>             <span style="font-family : 'Verdana'; font-size : 8pt;
> font-weight: bold;"></span>
>           </div>
>           <p class="formHint">
>             Note: At least 6 characters long.<br>Only letters,
> numbers, _ and .
>           </p>
>
>         </div>
>
>       </fieldset>
>
>   </form>
>   <!-- end frmGeneral -->
>
>   </body>
> </html>
>
> As you can see, it's pretty simple now.  In FF it works fine, no
> errors.  However, in IE I get the error: function part executed and
> the msg value is "error".
>
> My questions :
>
> 1) Am I doing the error: function() part correctly ?
> 2) How can I catch the real exception error message (something that
> will help me get somewhere) ?  I tried with the error:
> function(xhr,err,e)  syntax and always get the "error" message in IE.
>
> Thanks for your help !!!
> 0xCAFE
>
>


-- 
Ted

Reply via email to