我在javascript中有一个带有参数的函数,如下所示:
function editRow(str){
var row= document.getElementById(str);
var cols = row.getElementsByTagName("td");
..........
}
并且该函数应该获得某些tr的id,并替换此tr包含的td中的所有文本。
所以,我试图在tr中添加一个我想要更改的按钮,并使用'onclick'来调用该函数,但问题是该函数只在没有参数的情况下工作,如果我试图发送一个参数不工作...... aspx.cs页面:
......
foreach (DataRow row in ds.Tables[0].Rows)
{
(....more not important code.....)
allStr +=
"<td><input type='button' **onclick='editRow('row"+row["Id"]+"');'** value='edit'><form id='TreeDelete2' action='delete.aspx' method='post' onsubmit='return IfToDelete();'><input type='image' name='sbmt' src='/images/X.gif'/></form></td></tr>";
}
......
我用**标记了这个事件。
我要更改的tr的id是row1(row [“Id”] == 1)
所以还有其他方法从aspx文件传递参数?或者我做错了什么?
答案 0 :(得分:0)
更改您的js功能以获取tr element itself
,
function editRow(row){
//var row= document.getElementById(str);
var cols = row.getElementsByTagName("td");
..........
}
来自代码的input button string
(不确定为什么你在后面的代码中这样做),
"<td><input type='button' " +
"onclick='editRow(this.parentNode.parentNode);' value='edit'>" +
"...</td>"