Примечание: Это больше не работает в Chrome, не тестировалось в других браузерах. Смотрите правки ниже. Этот ответ оставлен здесь для исторической справки.
Если вы чувствуете, что строка проверки действительно не должна задаваться кодом, вы можете установить атрибут заголовка входного элемента следующим образом: «Это поле нельзя оставлять пустым». (Работает в Chrome 10)
title="This field should not be left blank."
См. http://jsfiddle.net/kaleb/nfgfP/8/
А в Firefox вы можете добавить этот атрибут:
x-moz-errormessage="This field should not be left blank."
Редактировать
Это, кажется, изменилось, так как я первоначально написал этот ответ. Теперь добавление заголовка не меняет достоверность сообщения, оно просто добавляет приложение к сообщению. Приведенная выше скрипка все еще применяется.
Редактировать 2
Chrome теперь ничего не делает с атрибутом title начиная с Chrome 51. Я не уверен, в какой версии это изменилось.