Help.plz。我创建了一个tr“unitTableTr”。在这个tr里面我创造了一个td。在其中一个创建的td中,在我创建了“unitTableTr”后,我需要从选项中添加文本。我放入td的文本,但仅适用于第一个选项 - 0.25。如果我试图采用“选项2”并将“选项2”文本放在td中,则只放置“选项1”文本。
**!**再一次:我需要,如果我选择“选项3” - 在表中必须是“选项3”文本,如果“选项4” - “选项4”文本。
我在代码中做错了什么?帮助PLZ
<form>
<select id="work1" style="float: left;">
<option>Выберите расценку:</option>
<option value="0">0,25 км</option>
<option value="1">0,25 -о 2,5 км</option>
<option value="2">2,5 - 4,5 км</option>
<option value="3">4,5 км</option>
<option value="4">schools</option>
<option value="5">base</option>
</select>
<div><span>+</span>
<input type="text"> meters</div>
</form>
<a onclick="createUnit()"> + </a>
<a onclick="removeUnit()"> x </a>
</div>
<script>
var table_index = 0;
var a = document.getElementById("work1");
var b = a.options[a.selectedIndex].text;
var c = document.createTextNode(b);
c.innerHTML = b;
text3.appendChild(c);
function createUnit() {
var unitTableTr = document.createElement('tr');
var unitTableTrTd_1 = document.createElement('td');
table_index++;
var td_1_p = document.createTextNode(table_index );
unitTableTrTd_1.appendChild(td_1_p);
unitTableTr.appendChild(unitTableTrTd_1);
var unitTableTrTd_2 = document.createElement('td');
var text2 = document.createTextNode("Reconstruction ");
var p = document.createElement("p");
var text3 = document.createTextNode(c.innerHTML);
p.id ="text3";
unitTableTrTd_2.appendChild(p);
unitTableTr.appendChild(unitTableTrTd_2);
p.appendChild(text2);
p.appendChild(text3);
var unitTableTrTd_3 = document.createElement('td');
unitTableTr.appendChild(unitTableTrTd_3);
var unitTableTrTd_4 = document.createElement('td');
unitTableTr.appendChild(unitTableTrTd_4);
var unitTableTrTd_5 = document.createElement('td');
unitTableTr.appendChild(unitTableTrTd_5);
begin_table.appendChild(unitTableTr);
}
</script>
答案 0 :(得分:0)
我认为您的问题是由执行顺序引起的。
您的代码无效,因为 以下代码仅在页面加载时执行一次 :
var b = a.options[a.selectedIndex].text;
var c = document.createTextNode(b);
c.innerHTML = b;
text3.appendChild(c);
在您的代码中,您会在createUnit()
函数之前显示这种情况。所以这只会运行一次 - 在页面加载时。当页面加载时,所选索引始终是选项列表中的第一个项目。
从您的英语来看,很难准确说出您希望程序如何工作,但是,每次要创建该元素时,您都需要获取所选索引。通过将上述代码移到createUnit()
函数中,它可以解决您的问题,但是再次......如果不长时间研究它,很难说出您的程序在做什么。