2009-04-20 39 views
11

Tôi có một câu hỏi. Thứ nhất, tôi sẽ không giả vờ rằng tôi biết những gì tôi đang nói về ở đây. Tôi là một newbie đến http và JavaScript.Biến cho img src =

Tôi nghĩ câu hỏi của mình có thể được trả lời trong bài này IMG SRC tags and JavaScript nhưng tôi nghĩ tôi sẽ giải thích chính xác điều tôi đang cố gắng đạt được trong trường hợp có cách dễ dàng hơn.

Tôi có một trang web, tôi muốn hiển thị một hình ảnh trên đó. Chỉ có điều là, hình ảnh đến từ một màn hình hệ thống tự động, hình ảnh được tự động tạo ra mỗi ngày và được đặt trong một thư mục mới tùy thuộc vào ngày tháng.

ví dụ: Vào ngày 4 tháng 4 = "http://host/partition/2009/apr/04/cpu.gif"
ví dụ: Vào ngày 5 tháng 4 = "http://host/partition/2009/apr/05/cpu.gif"

Để tạo điều kiện này, tôi đã tạo một số JavaScript cơ bản để cung cấp cho tôi ngày theo định dạng tôi cần. Tôi có tất cả những gì làm việc. Bây giờ tôi chỉ muốn sử dụng biến mà tôi đã tạo để hiển thị hình ảnh. Tôi có mã JavaScript được lưu trữ trong một hàm gọi là displaydate() Nếu tôi làm điều này <script language="JavaScript"> displaydate() </script> Tôi thấy "http://host/partition/2009/apr/05/cpu.gif" và điều đó là chính xác.

Bây giờ, làm cách nào để hiển thị trang này trên trang web chính xác?

<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. Tôi đã đọc rất nhiều trang về điều này và đã cố gắng rất nhiều thứ, nhưng đã không có may mắn cho đến nay. Bất kì sự trợ giúp nào đều được đánh giá cao.

+1

bạn đề cập đến Java - là câu hỏi của bạn làm thế nào để xuất biến vào thuộc tính src? Bạn đang sử dụng một cái gì đó như JSP? – harto

+2

Javascript không liên quan gì đến Java. Tôi nghĩ bạn đã nhầm lẫn cả hai. – Artelius

Trả lời

14

Có, trang đó có thể trả lời câu hỏi của bạn. Về cơ bản, bạn muốn javascript này:

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

Trừ bạn muốn thay thế "yourpicture.png" với chức năng bạn đã viết để tạo ra các đường dẫn chính xác đến hình ảnh trên đĩa, vì vậy ...

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

Tất nhiên, bạn có thể cần phải sửa đổi điều này một chút cho việc sử dụng của riêng bạn, getElementById sẽ lấy làm đối số cho dù thuộc tính id của thẻ < img> của bạn là gì. Bạn có thể muốn thực hiện javascript ở trên sau khi trang của bạn đã được nạp, ví dụ:

<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> 
+3

Rất xa, cảm ơn phản hồi. Tôi đã không mong đợi một câu trả lời nhanh như vậy. Đây là lần đầu tiên tôi đã đặt câu hỏi trên bất kỳ diễn đàn nào. Cảm ơn, tôi sẽ thử điều này. –

+2

Chào mừng, chỉ cần thực hiện một chỉnh sửa khác mà tôi thực sự đã thử nghiệm và nó đã hoạt động cho tôi. Hy vọng rằng bạn có thể giúp bạn làm việc. Chúc may mắn! –

+0

mã của bạn rất đẹp, xe tăng –

1

Bạn chỉ nên cần phải thay đổi dòng này

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

để

return "http://host1/Shared/" + year + "/" + month + "/" + day + "/cpu_abs.gif"; 
Các vấn đề liên quan