Отобразить изображение в зависимости от значения переменной
Добрый день. Вопрос следующего характера, необходимо отобразить картинку в зависимости от значения переменной,например: если у=1 то отображается одна картинка, если у=2 то другая картинка.
Вот сам код, только естественно он не рабочий, помогите правильно составить код <span id="passp1">1</span> <script language="javascript"> var y = document.getElementById('passp1').innerHTML img1 = new Image (20,20) img = "green.gif" img2 = new Image (20,20) imgg = "red.gif" if (y==1) { document.img=img } else if ( y==2) { document.imgg=imgg } </script> |
Цитата:
<!DOCTYPE html>
<html>
<head>
<!--
<script src="http://code.jquery.com/jquery-latest.js"></script>
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
</style>
<script type="text/javascript">
</script>
</head>
<body>
<span id="passp1">1</span>
<img id='test' />
<script type="text/javascript">
var a=[
'http://javascript.ru/forum/images/smilies/smile.gif',
'http://javascript.ru/forum/images/smilies/laugh.gif'
];
var y = document.getElementById('passp1').innerHTML;
document.getElementById('test').src=a[y];
</script>
</body>
</html>
|
Спасибо KSA. Я сделал чуть по другому, теперь появился другой вопрос.
Есть следующий код: <span id="passp1"></span> <div id="myimg" class="k"></div> <script> function updateData() { if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.open("GET","test.xml",false); xmlhttp.send(); xmlDoc=xmlhttp.responseXML; document.getElementById("passp1").innerHTML=$(xmlD oc).find('#1-222-1-25-0').find('Value').text() } </script> <script language="javascript"> var y = parseFloat(document.getElementById("passp1").inner HTML); var i = document.getElementById('myimg'); img1 = new Image (20,20); switch (eval(y)){ case 1: img1.src="green.gif";break; case 2: img1.src="red.gif";break; case 3: img1.src="red.gif"; } i.appendChild(img1); </script> После выполения кода (парсится xml файл) браузер отобразил цифру 1, отображение происходит через <span id="passp1"></span> . Вопрос: как правильно теперь взять значение из <span id="passp1"></span> , чтоб в скрипте переменная y взяла значение 1. Пытаюсь так var y = parseFloat(document.getElementById("passp1").inner HTML) не срабатывает. Или же возможно либо сделать так, чтоб после парсинга xml файла между тегами span была цифра 1, т.е. <span id="passp1">1</span>. Помогите исправить код. P.S. Цифры могут быть разные после парсинга xml (1,2 или 3) |
Цитата:
Но если в спан точно пишется 1 - должно хватить и этого
<span id="passp1"></span>
<div id="myimg" class="k"></div>
<script>
function updateData() {
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else {// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
};
xmlhttp.open("GET","test.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
var y=+$(xmlD oc).find('#1-222-1-25-0').find('Value').text();
document.getElementById("passp1").innerHTML=y;
}
</script>
<script language="javascript">
var i = document.getElementById('myimg');
img1 = new Image (20,20);
switch (y){
case 1: img1.src="green.gif";break;
case 2: img1.src="red.gif";break;
case 3: img1.src="red.gif";
};
i.appendChild(img1);
</script>
|
Там может быть только 1, 2 или 3, они периодически меняются
|
| Часовой пояс GMT +3, время: 14:48. |