Обращение к 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, время: 04:53. |