Значение поля не может быть нулевым, это всегда строковое значение.
Код проверит, является ли строковое значение строкой «NULL». Вы хотите проверить, является ли это пустой строкой:
if ($('#person_data[document_type]').val() != ''){}
или
if ($('#person_data[document_type]').val().length != 0){}
Если вы хотите проверить, существует ли элемент вообще, вы должны сделать это перед вызовом val
:
var $d = $('#person_data[document_type]');
if ($d.length != 0) {
if ($d.val().length != 0 ) {...}
}