我有一个JavaScript,当我点击表格行时,我用它打开一个新页面:
//for clicking on a row in tabs and opening new page
function addOnclickToTabsDatatableRows() {
//gets all the generated rows in the html table
var trs = document.getElementById('formname:dataTable').getElementsByTagName('tbody')[0]
.getElementsByTagName('tr');
//on every row, add onclick function (this is what you're looking for)
for (var i = 0; trs.length > i; i++) {
var cells = trs[i].cells;
for(var j=1; j < cells.length; j++){
cells[j].onclick = new Function("rowOnclick(this.parentElement)");
}
}
}
我注意到一个我无法解决的问题。我在几个页面上应用这个JS脚本。在每个页面中,我有不同的形式与不同的ID。现在,如果我想使用这个JS,我必须拥有身份formname
的每个表单。无论我在哪里,我如何为每种形式应用这个JS?我可以使用任何标准方法吗?
答案 0 :(得分:3)
而不是document.getElementById('formname:dataTable')
,只需使用document.getElementsByTagName("form")
答案 1 :(得分:2)
只需迭代页面中的所有表单,如下所示:
for(var i=0;i<document.forms.length;i++) {
var trs = document.forms[i].getElementsByTagName('tbody')[0]
.getElementsByTagName('tr');
// rest of your code..
}