блок else выполняется при выполнении первого условия - PullRequest
0 голосов
/ 04 октября 2019

Я знаю, что есть куча вопросов такого типа, но я не могу найти тот, который отвечает на основную проблему.

У меня есть простой блок кода, где условие IF выполняется, но затем блок elseвыполняет в любом случае. Я проверил в консоли отладки, что условие действительно выполняется.

    if (@Model.MajorAvailable.ToString().ToLower() == 'true') {
        $("#checkyes").attr('checked', true);
    } else {
        $("#checkno").attr('checked', true);
    }

Ответы [ 2 ]

0 голосов
/ 04 октября 2019

Удаление кавычек из 'true', похоже, сработало - что странно, поскольку значение больше не является логическим, поскольку ToString () вызывается

0 голосов
/ 04 октября 2019
if (@Model.MajorAvailable.ToString().ToLower() == true) {
    $("#checkyes").attr('checked', true);
} else {
    $("#checkno").attr('checked', true);
}

этот код выглядит правильно, но, как сказал @Bravo, вы сравниваете строку с логическим значением. @ Model.MajorAvailable.ToString (). ToLower () эта строка возвращает перемешивание, верно?

...