我有这个JS函数,它在单击按钮时动态添加表字段。
问题是,提交表单后,动态添加的字段值没有传递给jsp页面。
function addI(){
if(count==1)
count=2;
var table = document.getElementById("tab");
var row = table.insertRow(count);
var cell1 = row.insertCell(0);
var cell2 = row.insertCell(1);
var cell4 = row.insertCell(2);
var cell5 = row.insertCell(3);
var cell6 = row.insertCell(4);
var cell7 = row.insertCell(5);
var cell8 = row.insertCell(6);
var cell9 = row.insertCell(7);
var cell10 = row.insertCell(8);
cell1.innerHTML = count;
cell2.innerHTML =" <select name='fabric"+count+"' id='sel"+count+"' onchange='rat1("+count+")' > <option> Fabrics </option>for(i=0;i< jsArr.length ; i++ ) { <option value="+jsArr[i]+" > " +jsArrname[i] + " </option> }</select>";
cell4.innerHTML ="<input type='color' name='color"+count+"' value='#ffffff' > ";
cell5.innerHTML ="<input type='text' name='length"+count+"' id='l"+count+"' size='5' >";
cell6.innerHTML ="<input type='text' name='breadth"+count+"' id='b"+count+"' size='5'>";
cell7.innerHTML ="<input type='text' name='qty"+count+"' id='q"+count+"' size='5' onchange='compute1("+count+")' >";
cell8.innerHTML ="<INPUT TYPE='TEXT' NAME='rate"+count+"' id='ra"+count+"' SIZE='5' disabled ><INPUT TYPE='TEXT' NAME='rate"+count+"' id='ra1"+count+"' SIZE='5' hidden >";
cell9.innerHTML ="<INPUT TYPE='TEXT' NAME='amt"+count+"' id='a"+count+"' SIZE='5' disabled ><INPUT TYPE='TEXT' NAME='amt"+count+"' id='a1"+count+"' SIZE='5' hidden >";
cell10.innerHTML="<input type='button' value='x' id='"+count+"' onClick='del("+count+")' >";
count++;
}
jsArr[]
是包含将在下拉列表中选择的结构列表的数组。
答案 0 :(得分:0)
将HTML放入cell2
时存在语法错误。
您无法使用文本字符串中的循环或其他功能,就像您尝试过的那样,请参阅下面的代码。
var str = "<select name='fabric" + count + "' id='sel" + count + "' onchange='rat1(" + count + ")' ><option> Fabrics </option>";
for (var i = 0; i < jsArr.length; i++) {
str += "<option value=" + jsArr[i] + ">" + jsArrname[i] + "</option>";
}
str += "</select>";
cell2.innerHTML = str;