источник изображения в нединамическом действии в html

#javascript #html

#javascript #HTML

Вопрос:

Исходный код представления HTML является:

 <IMG style="DISPLAY: inline" src="https://admit.belgacom.be/WCE/ESW/img/load.gif" />
  

но когда я вхожу в систему и достигаю этого местоположения, path отображается иначе, чем: (ESW отсутствует)

 <IMG style="DISPLAY: inline" src="https://admit.belgacom.be/WCE/img/load.gif" />
  

Из-за изменения пути, ie без ESW изображение не загружается.

Примечание: у меня есть код javascript в JSP, где он заменяет новое изображение из-за проблемы IE settimeout как:

 document.getElementById('imageId').src = "../../img/load.gif");
  

код:

 <div id="toHide" class="pb-text-align-center">
    <img style="display: inline" id='imageId' src="img/load.gif" />
    <form wicket:id="safeForm" class="clearfix">
        <input type="hidden" wicket:id="submitted" value="false" />
    </form>
</div>  

<SCRIPT type="text/javascript"> 
    function setSubmit(){
    document.getElementById("safeForm4c").submit();  
    document.getElementById('imageId').src = "../../img/load.gif"; }
    if (document.getElementById("safeForm4c").submitted.value == "false") {
        document.getElementById("safeForm4c").submitted.value = "true";
        setTimeout('setSubmit()', 100); 
    }else{ document.getElementById("toHide").style.display="none";}
</SCRIPT>
  

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

1. И вопрос в том? И почему вы избегаете этих разделителей строк? Это больше похоже на неправильный код на стороне вашего сервера.

2. Я не понимаю: сначала вы говорите, что «просмотр исходного кода» — это одно, но затем вы говорите, что это другое, когда вы действительно попадаете на страницу. Что такое серверная среда? Это php? ASP? JSP?

3. существует 2 способа входа в приложение: один — как гостевой пользователь, следующий — с данными для входа. когда я вхожу в систему, путь меняется. Я использую java / JSP.

4. @kasim ваш скрипт находится в том же документе, что и HTML? Если это так, я сейчас пересматриваю свой ответ

5. файлы скрипта, css, java, html находятся в одном месте / каталоге.

Ответ №1:

Я решил, назначив динамический путь к изображению вместо ../ ../img/load.gif как:

//document.getElementById(‘ImageID’).src = «../../img/load.gif «);

document.getElementById(‘ImageID’).src = document.getElementById(‘ImageID’).src;

 <SCRIPT type="text/javascript"> 
        function setSubmit(){
        document.getElementById("safeForm4c").submit();  
        document.getElementById('imageId').src = document.getElementById('imageId').src; }
        if (document.getElementById("safeForm4c").submitted.value == "false") {
            document.getElementById("safeForm4c").submitted.value = "true";
            setTimeout('setSubmit()', 100); 
        }else{ document.getElementById("toHide").style.display="none";}
    </SCRIPT>
  

Ответ №2:

Одним из преимуществ является ваша файловая структура и относительное расположение, чтобы дать полный ответ по проблеме скрипта или структуре файлов, нам нужно было бы посмотреть, что у вас есть на месте.

Предполагая, что это не сценарий, из вашего сообщения похоже, что JavaScript находится в папке на том же уровне, что и img, например, глядя на структуру файла, я полагаю, что именно здесь хранятся ваши файлы

/htdocs/WCE/ESW/img/load.gif это путь к вашему изображению

/htdocs/WCE/alt1/alt2/java.js это путь, по которому ссылаются на свойство src

Теперь, когда я ввожу .. / ../img/load.gif это вернется к /htdocs/WCE/img/load.gif вырезание папки ESW.

Если это так, вам нужно будет посмотреть на свои файловые структуры, чтобы определить правильный путь (вероятно ../img/load.gif ), если у вас возникли проблемы, опубликуйте их здесь, и я (или другой здесь) могу попытаться помочь вам найти выход.

Я надеюсь, что это поможет.

ОБНОВЛЕНО В РЕЗУЛЬТАТЕ ДОБАВЛЕНИЯ КОДА:

Если ваш скрипт находится на той же странице, что и ваш HTML, попробуйте удалить ../ ../ из вашего JavaScript

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

1. когда я удаляю ../ , изображение не перезаписывается через javascript. изначально загружается, но перезагрузки не происходит.

2. @kasim не могли бы вы, пожалуйста, поделиться дополнительным кодом, который обрабатывает начальную загрузку и повторную загрузку?