Let A 1, A 2 be standard operator algebras on complex Banach spaces X 1, X 2, respectively. For k 2, let (i 1,, i m) be a sequence with terms chosen from {1,, k}, and define the generalized Jordan product T 1 T k= T i 1 T i m+ T i m T i 1 on elements in A i. This includes the usual Jordan product A 1 A 2= A 1 A 2+ A 2 A 1, and the triple {A 1, A 2, A 3}= A 1 A 2 A 3+ A 3 A 2 A 1. Assume that at least one of the terms in (i 1,, i m) appears exactly once. Let a map : A 1 A 2 satisfy that ( (A 1) (A k))= (A 1 A k) whenever any one of A 1,, A k has rank at most one. It is shown in this paper that if the range of contains all operators of rank at most three, then must be a Jordan isomorphism multiplied by an m th root of unity. Similar results for maps between self-adjoint operators acting on Hilbert spaces are also obtained.