Разве противоположность больше (>
) не будет меньше (<
)?
Так что вместо:
if (!results.d.Id > 0)
Попробуйте:
if (results.d.Id < 0)
За ваш комментарий: Тогда просто сделайте это:
if (!results.d.Id)
results.d.Id = 0;
Оператор !
возвращает значение false, если переменная false
, null
, undefined, 0 или пустая строка. Еще более простой способ сделать это будет следующим:
results.d.Id = results.d.Id || 0;
Если идентификатор уже был установлен (и не равен нулю), сохраните его, иначе установите его на ноль. Таким образом, вам даже не нужно выражение if
. Таким образом, ваш конечный результат будет выглядеть примерно так:
success: function(results) {
if (results.d.Name.length > 1) {
results.d.Id = results.d.Id || 0;
// more code;
}
}