Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Параметр в функции (id таблицы) не работет (https://javascript.ru/forum/misc/50152-parametr-v-funkcii-id-tablicy-ne-rabotet.html)

Иннокентий 14.09.2014 15:04

Параметр в функции (id таблицы) не работет
 
Здравствуйте. Составляю таблицу. И тут столкнулся с проблемой. Параметр nomer в функции не работает. Без этого параметра таблица нормально заполняется напрямую через id. one.innerHTML или two.innerHTML. А мне необходимо в текстовом поле написать айдишник таблицы - и передать в параметр ту таблицу, которую надо заполнить. На экране у меня несколько таблиц для разных нужд. nomer.innerHTML не работает. В чем причина?

<label>Номер таблицы</label>
<input type="text" id="nomer">

<label>Фамилия</label> 
 <input type="text" id="Surname"> 

 <label>Имя</label> 
 <input type="text" id="FirstName"> 

 <label>Отчество</label> 
 <input type="text" id="LastName">

<table id="tableExample"> 
 <thead> 
 <th>Имя</th> 
 <th>Фамилия</th> 
<th>Отчество</th> 
 </thead> 

 <tbody id="one"> 

 </tbody> 
 </table>

<table id="tableExample"> 
 <thead> 
 <th>Имя</th> 
 <th>Фамилия</th> 
<th>Отчество</th> 
 </thead> 

 <tbody id="two"> 

 </tbody> 
 </table>

<script>
function addToTableBodyExample(nomer, surname, FirstName, LastName){
 var entry = [surname, FirstName, LastName], 
 tableContent = "<tr>"; 
 for(var i = 0; i < 3; i++){ 
 tableContent += "<td>" + entry[i] + "</td>"; }; 
 
 
 tableContent += "</tr>"; 
 
 
 nomer.innerHTML += tableContent; 
 };

</script>

<button onclick="addToTableBodyExample(nomer.value, Surname.value, FirstName.value, LastName.value);"> 
 
 </button>

<style>
#tableExample{ 
 border: 1px solid green; 
 background: #bbb; 
 margin: 10px; 
 } 
 #tableExample thead th{ 
 background: white; 
 color: black; 
 } 
 #tableExample tbody{ 
 background: #eee; 
 color: black; 
 }
</style>

Aetae 14.09.2014 15:23

В том, что nomer у вас в функции - это текстовая стока, а не элемент.
document.getElementById(nomer).innerHTML += ...


Часовой пояс GMT +3, время: 13:01.