Отобразить изображение в зависимости от значения переменной
Добрый день. Вопрос следующего характера, необходимо отобразить картинку в зависимости от значения переменной,например: если у=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, время: 22:53. |