onblur - срабатывает при расфокусировке поля.
onchange - стреляет, когда значение поля изменено, но при условии снятия фокуса с него.
Чтобы увидеть разницу, поочерёдно потыркайте в пустое поле и в документ, будет срабатывать только onblur, а не onchange, так как значение не поменялось.
Посмотрите в сторону oninput, он будет стрелять сразу на изменение значения поля, что позволит делать более юзер-экспириенсную валидацию или иные приколюхи.