Как я могу запустить функцию и вернуть вывод в виде изображения src javascript

#javascript #html #image #function #src

Вопрос:

У меня есть функция, которая определяет, каким источником будет изображение:

 function facilityImg(arr, x) {
    switch (arr[x]) {
        case 'Yes':
            return "Images/checked.png";
        case 'No':
            return "Images/unchecked.png";
    }
}
 

Где arr — массив строк » Да » / » Нет » и x индекс каждого значения.

Я пытаюсь запустить эту функцию следующим образом:

 let html = `<div class="facilityCell">
               <img class="facilityIcon" title="Air-Conditioner" src="Images/air-conditioner.png">
               <img class="facilityIcon" src='facilityImg(${facilityArr}, 0)'>
            </div>`
 

При проверке html-элемента я получаю это как src:

Выходные данные img src

Есть ли что-то, что я делаю не так? Я пробовал с [src] и :src , по — видимому, должно сработать. И прежде чем вы пристрелите меня в комментариях, я повторяю этот код, но каждый раз немного по — другому для второстепенного проекта-не могу потрудиться правильно написать еще 400 строк.

Возможно ли то, что я хочу сделать?

Комментарии:

1. Попробуйте это src="${facilityImg(facilityArr, 0)}"

2. @AHMEDSAJJAD любезно опубликуйте это как ответ, чтобы отметить его как ответ, так как это может помочь кому-то в будущем.

3. Отправил это в качестве ответа. @Эллиот Каллен, пожалуйста, примите это как ответ

Ответ №1:

Вам просто нужно исправить интерполяцию вашей функции. Попробуй

 let html = `<div class="facilityCell">
              <img class="facilityIcon" title="Air-Conditioner" src="Images/air-conditioner.png">
              <img class="facilityIcon" src="${facilityImg(facilityArr, 0)}">
            </div>`
 

Надеюсь, это все исправит