Question: I got 4 jobs:
1, 2, 3, 4.

2's condition: s(1);
3's condition: s(2);
4's condition: s(1) & s(2) & s(3)

all these jobs are **daily jobs**

the first day is ok.
the second day, the 4th job triggered **mutilple times**:

I think when 1 success, and the status of 2 and 3 are still 'success'(the last days status), 
so the job 4 triggered, 

then 2 success, triggered again...

so is there any solution for this? becase I only want these condition is based on the current day's result.

Answer: 
Yes if you are running latest version of Autosys you can set the success condition depending on time.
In your case you can set as:
4's condition: s(1, 23.00) & s(2, 23.00) & s(3, 23.00)

This condition checks if the jobs 1,2,3 were successful within last 23 hours. 

Format is:
S(*jobname*, *hh*.*mm*)
One solution is to include all the 4 jobs in a Box job, and whenever the Box jobs starts all the job will become active and will run only in the completion of all the dependencies.