通过js操作html table取不到新输入到input框的值?解决方法
通过js操作html table取不到新输入到input框的值?
首先我通过js给table新增了一行
然后,在input text -- id 中 输入新的值
接着点击新增,调用addRow()方法,想要获取id的值取不到
$(rows[i].cells[1].innerHTML)取得的对象如下
我觉得是不是我在js里面给table insertRow以后,还需要怎么给他更新下之类的,然后我输入值的时候,value就能取到了?
求哪位大侠帮帮我
------解决方案--------------------
构建方法略奇葩。。jquery选择器对innerhtml可能不能正常封装成一个对象吧。。取值你依然用document方法就行
------解决方案--------------------
input的内容不是保存到html里面的 innerHtml本身没有这个属性值所以没值
首先我通过js给table新增了一行
var table = document.getElementById("sample-table-1");
var row = table.insertRow(document.getElementById("sample-table-1").rows.length);
var rowCount=document.getElementById("sample-table-1").rows.length;
var countCell=document.getElementById("sample-table-1").rows.item(0).cells.length;
var cell0=row.insertCell(0);
cell0.innerHTML="<label><input type='checkbox' class='ace' checked='checked'/><span class='lbl'></span></label>"
var cell1=row.insertCell(1);
cell1.innerHTML="<input type='text' id='id' name='id' value='' onchange='changeValue(this)'>";
var cell2=row.insertCell(2);
cell2.innerHTML="<input type='text' id='userId' name='userId' value=''>";
var cell3=row.insertCell(3);
cell3.innerHTML="<input type='text' id='status' name='status' value=''>";
var cell4=row.insertCell(4);
cell4.innerHTML="<input type='text' id='datetime' name='datetime' readonly>";
var cell5=row.insertCell(5);
cell5.innerHTML="<input type='text' id='memo' name='memo' value=''>";
然后,在input text -- id 中 输入新的值
接着点击新增,调用addRow()方法,想要获取id的值取不到
var table = document.getElementById("sample-table-1");
var rows=document.getElementById("sample-table-1").rows;
var listOrder = [];
for(var i=0; i<rows.length; i++){
if($(rows[i].cells[0].innerHTML).children('input').attr("checked")=='checked'){
var data = {
"id": $(rows[i].cells[1].innerHTML).text(),
"userId": $(rows[i].cells[2].innerHTML).text(),
"status": $(rows[i].cells[3].innerHTML).text(),
"datetime": "",
"memo": $(rows[i].cells[5].innerHTML).text()
}
listOrder.push(data);
}
}
$(rows[i].cells[1].innerHTML)取得的对象如下
[
<input type="text" id="id" name="id" value>
]
我觉得是不是我在js里面给table insertRow以后,还需要怎么给他更新下之类的,然后我输入值的时候,value就能取到了?
求哪位大侠帮帮我
------解决方案--------------------
构建方法略奇葩。。jquery选择器对innerhtml可能不能正常封装成一个对象吧。。取值你依然用document方法就行
------解决方案--------------------
input的内容不是保存到html里面的 innerHtml本身没有这个属性值所以没值