oof..left another little piece out of my original posting (so much for
accurately snippetizing this thing, he he):
function beginRequest(formData, jqForm)
{
stopTimer();
}
FYI, I also have a little message appearing onscreen during the
autosave: on success it disappears. That creates a sort of "pulse" that
the users sees that tells them that the autosave is happening. From what
I've been told, that gives them a "nice comfortable feeling" (that their
stuff is being saved).
- Jack
Jack Killpatrick wrote:
> Whoops, let out a piece: this will reset the timer after success, so
> the autosave will happen again:
>
> function handleResponse(responseText, statusText)
> {
> startTimer();
> }
>
> If you pass a successFn into save(), then run startTimer() in that
> success function, so that the timer restarts after the successful
> autosave.
>
> - Jack
>
> Jack Killpatrick wrote:
>> Dan,
>>
>> I'm using the form plugin to do an autosave. Here are some chunks of
>> what I do (it's not namespaced, so you might want to add that, etc):
>>
>> var _timerRunning = false;
>> var _timer = null;
>>
>> function startTimer()
>> {
>> if (! _timerRunning)
>> {
>> _timer = setTimeout ( "save()", 12000 );
>> _timerRunning = true;
>> }
>> }
>>
>> $(document).ready(function() {
>> startTimer();
>> });
>>
>> function save(successFn)
>> {
>> var options = {
>> type: 'POST',
>> beforeSubmit: beginRequest,
>> success: (successFn != undefined) ? successFn :
>> handleResponse,
>> semantic: true
>> };
>>
>> $("#surveyForm").ajaxSubmit(options);
>> }
>>
>> You can optionally pass success/callback function into save(), ie:
>> save( onSuccess ). In my case, it was OK for it to post to the url
>> declared in the form tag, but there's a url option you can set in the
>> form plugin, too. Not shown above: I also have a hidden name="action"
>> element that I change the value of at different times, based on
>> button clicks (if the user causes a save), to support different
>> handling on the post to the server.
>>
>> - Jack
>>
>> Dan Wilson wrote:
>>> I am attempting to use the .serialize function to post a form via
>>> Ajax. The form is very large and has just about every type of form
>>> element possible. I was not clear on the semantics to select all form
>>> elements in a particular form and all the examples I found were for
>>> [EMAIL PROTECTED]
>>>
>>> The use case is an autosave for the form. I looked at the form plugin
>>> and it seemed to want to take control of the form submit. In my use
>>> case I want to save the form in the background and let the user
>>> continue to work with the form.
>>>
>>>
>>> All help and advice is appreciated.
>>>
>>> dw
>>>
>>>
>>>
>>
>
_______________________________________________
jQuery mailing list
[email protected]
http://jquery.com/discuss/