Why did Saladin refuse to give up Jerusalem?

-----------------------

Jerusalem was holy to Muslims, as well as to Christians and Jews, so to give up Jerusalem would have meant denying Muslims the opportunity to perform pilgrimages to Jerusalem, since Christian rulers never accepted Muslim rights. Contrary to modern opinion, the Arabic empire was not at that time entirely Muslim, but included a very substantial proportion of Christians and Jews, although the ruling classes were Muslim. Generally, Christians and Jews were permitted to visit Jerusalem without hindrance.

To have given up Jerusalem would also have provided the crusading armies a well fortified base from which to attack the Arab empire. Even the cities that remained in Christian hands provided bases for attacks until the Christian armies were finally driven from the Holy Land, but Jerusalem was more easily defended, and would extend the reach of the Christian armies right into the heart of the Arabian empire.