当BootStrapTable td内的内容不是纯文本的时候,这样获取值~~~
当BootStrapTable td内的内容不是纯文本的时候,我们直接获取值是拿不到的。比如当td的内容是一个Input如图:
那这时候我们要这么拿呢。
思路:
1.首先我们的input都有一个共有class(我这里叫dateClass),然后每一个td属于一个tr,这个tr有一个data-index=0(index是每一行的序号)。
2.通过tr+class我们就能定位到每一行下的某个td下的input的val
3.下面进行实现
var allTableData = $("#qydataTable").bootstrapTable('getData');//获取表格的所有内容行
for(var i=0;i<allTableData.length;i++){
//这里$("tr[data-index="+i+"] .jsdateClass").val()就是获取每一行下某个td下input的val
console.log($("tr[data-index="+i+"] .jsdateClass").val());
//这里是我给我的td的值赋予input的值
allTableData[i].startDate=$("tr[data-index="+i+"] .jsdateClass").val();
allTableData[i].endDate=$("tr[data-index="+i+"] .dateClass").val();
}
/*现在我的startDate就不为空了,因为之前td内是input所以没有值,
通过上面的循环已经把input的val赋予了这个td所以现在就有值了。
这就实现了我们的目标,获取td下input的值
*/
console.log(allTableData);