Pankaj
Pankaj

Reputation: 10095

Java script function to hold until save evenet execution is completed

I have a javascript function. In thi function i am calling a button event like below.

$("#btnSave").trigger("click");

My query is , Is there any way to keep the control here on this line until the saving is done? I have some code written underneath this line and it is being overridden.

Any suggestions?

Upvotes: 0

Views: 1284

Answers (2)

kcsoft
kcsoft

Reputation: 2947

It would have helped if you've posted some code.

You can do it in 2 ways:

1.) Use polling. After the trigger call use a loop to check for a flag that you must set when the save is complete. A timeout is needed for saving CPU from intensive js processing.

2.) Put the code to be executed after the trigger call inside a function. Pass this function as a callback to the onClick function.

    function onSaveClick(e) {
        //do my save stuff

        e.data.callback();
    }

No. 2 is recommended. //attach onclick event $("#btnSave").click(onSaveClick);

//you onclick function
function onSaveClick(event, callback) {
    //save data
    callback();
}

//trigger
$("#btnSave").trigger("click", afterSave);

//after save stuff
function afterSave(){
//do more stuff
}

Upvotes: 1

Gabriel Gartz
Gabriel Gartz

Reputation: 2870

Use a callback.

Get the lines under the trigger line and pass to your save function as callback when the event has success.

Upvotes: 1

Related Questions