Переменная для img src = - PullRequest
11 голосов
/ 20 апреля 2009

У меня есть вопрос. Во-первых, я не собираюсь делать вид, что знаю, о чем я говорю здесь. Я новичок в http и JavaScript.

Я думаю, что мой вопрос можно ответить в этом сообщении теги IMG SRC и JavaScript но я подумал, что объясню, чего именно я пытаюсь достичь, если есть более простой способ.

У меня есть веб-страница, я хочу отобразить на ней изображение. Единственное, что изображение поступает с автоматизированного системного монитора, оно генерируется автоматически каждый день и помещается в новый каталог в зависимости от даты.

например. 4 апреля = "http://host/partition/2009/apr/04/cpu.gif"
например 5 апреля = "http://host/partition/2009/apr/05/cpu.gif"

Чтобы упростить это, я создал базовый JavaScript, чтобы дать мне дату в нужном мне формате. У меня все это работает. Теперь я просто хочу использовать эту переменную, которую я создал, чтобы показать изображение. У меня есть код JavaScript, хранящийся в функции с именем displaydate () Если я сделаю это <script language="JavaScript"> displaydate() </script> я увижу "http://host/partition/2009/apr/05/cpu.gif" и это правильно.

Теперь, как мне правильно отобразить это на сайте?

 <a href="displaydate()"><img src="displaydate()" </a></td>    //This does not work. I am just adding it to show where I have been heading.

P.S. Я прочитал много страниц об этом и пробовал много вещей, но мне пока не повезло. Любая помощь, будет высоко ценится.

Ответы [ 2 ]

14 голосов
/ 20 апреля 2009

Да, эта страница, вероятно, отвечает на ваш вопрос. По сути, вы хотите этот JavaScript:

<script type="text/javascript">
document.getElementById('image').src = "yourpicture.png";
</script>

За исключением того, что вы хотите заменить "yourpicture.png" на функцию, которую вы написали, чтобы создать правильный путь к образу на диске, поэтому ...

<script type="text/javascript">
document.getElementById('image').src = displaydate();
</script>

Конечно, вам может потребоваться немного изменить это для своих собственных нужд, getElementById будет принимать в качестве аргумента независимо от атрибута id вашего тега image. Вы, вероятно, захотите выполнить вышеописанный javascript после загрузки вашей страницы, т.е.

<html>
<head>
<script type="text/javascript">
function load()
{
document.getElementById('image').src = displaydate();
}

function displaydate()
{
//your displaydate() function here
}
</script>
</head>

<body onload="load()">

<img src="nothing.jpg" id="image" name="image"/>
</body>
</html> 
1 голос
/ 24 апреля 2009

Вам просто нужно изменить эту строку

document.write("http://host1/Shared/" + year + "/" + month + "/" + day + "/cpu_abs.gif");

до

return "http://host1/Shared/" + year + "/" + month + "/" + day + "/cpu_abs.gif";
...