The OEM Jeep cupholder in a XJ is a POS one that sits on the side of console and pass knee knocks it off and the weight of a full drink yanks it off.
This one for sale is a decent design and they are currently made by OMIX. I have seen these brand new for $9.99 at 4WD.com, and free shipping to a local 4 wheel parts store.