Из заголовка вашего вопроса:
if( val === null || val == "" )
Я вижу только то, что вы забыли =
при попытке сравнить строго по равенству val
с пустой строкой:
if( val === null || val === "" )
Тестирование с Firebug:
>>> 0 === null || 0 == ""
true
>>> 0 === null || 0 === ""
false
РЕДАКТИРОВАТЬ: см. Комментарий CMS вместо объяснения.