IF ELSEIF ELSEIF ELSEIF ELSE - как сделать?

Поддержка
  • @Fox
    Речь об конструкции без ELSE. Так в том то и дело, если делать пошагово, выполняя по одному действию, то все работает правильно, то есть из трех заданных IF одно правильное выполняется. А если нажать на кнопку Запустить скрипт, то тогда пролетает мимо

  • @Putevka said in IF ELSEIF ELSEIF ELSEIF ELSE - как сделать?:

    @Fox
    Речь об конструкции без ELSE. Так в том то и дело, если делать пошагово, выполняя по одному действию, то все работает правильно, то есть из трех заданных IF одно правильное выполняется. А если нажать на кнопку Запустить скрипт, то тогда пролетает мимо

    Значит смотрите содержимое переменных

  • вот сделал скрин из двух IF
    а по факту их может быть больше (до 5 шт)
    2023-04-26_122639.png

  • @Putevka С такими (автоматическими) селекторами у вас никогда ничего нормально работать не будет, их нужно писать самому. Авто селекторы зависят от порядка элементов на странице, но он может менять даже на разном разрешение, при появление других элементов на странице и тд Пишите селекторы сами, на форуме и в сети куча мануалов по css и xpath селекторам и большего ума там не нужно

  • понял причину, спасибо!

  • тогда попутный вопрос. Какой селектор более надежный и стабильный css, match или xpath ?

  • Всем спасибо! Разобрался с этим вопросом!

  • @Putevka said in IF ELSEIF ELSEIF ELSEIF ELSE - как сделать?:

    тогда попутный вопрос. Какой селектор более надежный и стабильный css, match или xpath ?

    match не надежный, это просто поиск по коду страницы
    css,xpath - одинаково надежны, тут как составите.

    xpath - более функционален, но нужно писать больше букв, чем в css. Я в основном использую css, когда его не хватает тогда xpath

  • @Fox
    Предложенная вами схема будет работать только при одном условии, что первый IF = true должен быть только на нулевом уровне, то есть он не может быть вложенным по отношению другим IF. Потому что когда срабатывает BREAK, то он выбивает все вышестоящие условия IF и логика скрипта нарушается...
    Тут не мешало бы присвоить числовой аргумент для BREAK

  • @Putevka said in IF ELSEIF ELSEIF ELSEIF ELSE - как сделать?:

    @Fox
    Предложенная вами схема будет работать только при одном условии, что первый IF = true должен быть только на нулевом уровне, то есть он не может быть вложенным по отношению другим IF. Потому что когда срабатывает BREAK, то он выбивает все вышестоящие условия IF и логика скрипта нарушается...
    Тут не мешало бы присвоить числовой аргумент для BREAK

    Да, можно было сделать так. Либо использовать доп переменную в условиях, значение которой меняется при срабатывании условия. Такой вариант более понятно выглядит при использовании циклов с вызовом функций, с числовым break в этом случае не очень понятно из какого условия или цикла оно выведет точку выполнения

  • 1 Votes
    8 Posts
    959 Views
  • 0 Votes
    2 Posts
    525 Views
  • 2 Votes
    4 Posts
    574 Views
  • 0 Votes
    3 Posts
    1166 Views
  • 0 Votes
    2 Posts
    946 Views