• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 193
  • Last Modified:

small tweak help need with jquery ajax call

while, working with my code, i am working on showing a message and hiding it after 5 seconds, but due to some reason, its is not working, i am going nuts here and its late now

here is my code snippet:

$("#updatefeedback").bind("click",function(){
            var data = $("form").serialize();
            $.post('sbtfeedback.cfm',data, function(data) {
                  $("#feedback_response").html(data).text()
            });
      });

my server-side file returns like this

<cfif len('FORM.sbname') IS 0>
    Error! Please Provide Your Name
    <cfelseif len('FORM.sbemail') IS 0>
    Error! Please Provide Your Email
    <cfelseif isDefined('FORM.sbcomments')>
    Error! Please provide Some Comments
<cfelse>
Cool! We did it
</cfif>

so minifying all tasks, i am actually returning the code rather than some kind of variable

the issue i am facing is, i am able to show a message but unable to hide it, don no why, what i m missing

Guide
0
Gurpreet Singh Randhawa
Asked:
Gurpreet Singh Randhawa
  • 3
  • 3
1 Solution
 
leakim971PluritechnicianCommented:
what about :
$("#updatefeedback").bind("click",function(){
            var data = $("form").serialize();
            $.post('sbtfeedback.cfm',data, function(data) {
                  $("#feedback_response").html(data).text();
                  setTimeout(function() { $("#feedback_response").fadeOut("fast"); }, 5000);
            });
      });

Open in new window

0
 
Gurpreet Singh RandhawaWeb DeveloperAuthor Commented:
but settimeout is the better way of doing it, i was thing if we can use OnComplete or something that can help
0
 
Gurpreet Singh RandhawaWeb DeveloperAuthor Commented:
ok so i noted one things,

it just displays only one time and then it does not show up for any other message or for the same message
0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 
leakim971PluritechnicianCommented:
>it just displays only one time and then it does not show up for any other message or for the same message

If you want replace .fadeIn("fast") by show();
$("#updatefeedback").bind("click",function(){
            var data = $("form").serialize();
            $.post('sbtfeedback.cfm',data, function(data) {
                  $("#feedback_response").html(data).text();
                  $("#feedback_response").fadeIn("fast");
                  setTimeout(function() { $("#feedback_response").fadeOut("fast"); }, 5000);
            });
      });

Open in new window

0
 
Gurpreet Singh RandhawaWeb DeveloperAuthor Commented:
Thanks, Although i was looking some evnt callback method like oncomplete or onSendBefore but this worked for me for the time being, so its good

Thanks
0
 
leakim971PluritechnicianCommented:
onSendBefore is between line 2 and 3
oncomplete is on line 4

if you really need to do something inside the ajax process with jQuery.post use jquery.ajaxsetup & co : http://api.jquery.com/jQuery.ajaxSetup/
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

  • 3
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now