Обращение к id тега через value другого тега
Здравствуйте, есть разметка:
<p id="maind">Some text</p> <p id="maint">Some another text</p> <textarea id="comment" cols="30" rows="10"></textarea> <select name="" id="sel1"> <option value="maind">Общая информация</option> <option value="maint">Главные задачи</option> </select> <a href="javasript:Acct();">Опубликовать</a> и код: function Acct() { var nT = document.getElementById("comment"); var tT = document.getElementById("sel1").value; var tO = document.getElementById(tT).innerHTML; console.log(tT);//показывает выбранное выше значение, допустим "maind" document.getElementById(tT).innerHTML + tO + nT.value; }//Этот код не работает Однако, я могу реализовать подобное другим путем, он мне не очень нравится <option value="1">Общая информация</option> <option value="2">Главные задачи</option> а в коде: //... switch(tT)//элементов много, if не подходит { case "1": document.getElementById("maind").innerHTML + tO + nT.value;break; case "2": document.getElementById("maint").innerHTML + tO + nT.value;break; }//Это решение работает но оно слишком громоздкое Есть у кого нибудь идеи как заставить работать первый вариант? Заранее спасибо! |
WaldeMar1321,
<!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> </head> <body> <p class="text">Some text</p> <p class="text">Some another text</p> <textarea id="comment" cols="30" rows="10"></textarea> <select name="" id="sel1"> <option value="0">Общая информация</option> <option value="1">Главные задачи</option> </select> <a href="#" class="go">Опубликовать</a> <script> window.addEventListener("DOMContentLoaded", function() { var b = document.querySelector("#sel1"), a = document.querySelector(".go"), d = document.querySelector("#comment"), c = document.querySelectorAll(".text"); a.addEventListener("click", function(a) { a.preventDefault(); c[+b.value].innerHTML += d.value }) }); </script> </body> </html> |
WaldeMar1321,
первый вариант работает при <a href="#" onclick="Acct();">Опубликовать</a> и document.getElementById(tT).innerHTML = tO + nT.value; или document.getElementById(tT).innerHTML += nT.value; |
Часовой пояс GMT +3, время: 13:23. |