var times = this.aItems[numindex].Times;
var guid = this.aItems[numindex].GUID;
tb.rows[i].cells[n].innerText = this.aItems[numindex].Times;
tb.rows[i].cells[n].setAttribute("onclick", function() { tdOnclick(numindex.toString(), times.toString(), guid.toString()); });
function tdOnclick(index,times, guid) {
window.alert(index+";"+times + ";" + guid);
}调试发现每个td里面的onclick属性都是
tdOnclick(numindex.toString(), times.toString(), guid.toString());
问题就是
onclick传进去的function直接把变量名传进去,而没有把变量的值传进去
times,guid都是局部变量且值都是有变的(调试过了)。但是每个td的onclick属性都变成
tdOnclick(numindex.toString(), times.toString(), guid.toString());
即直接把变量名传进去,而没有把变量的值传进去。这样当单击时得到的值自然就是变量最后赋值的值
请问怎么把变量的值传进去。。而不是变量名
不然执行会有错的...
$("*", document.body).click(function (e) {
e.stopPropagation();
var domEl = $(this).get(0);
$("#table_id > tr > td[id='first']").click(function($){
tdOnclick(numindex.toString(), times.toString(), guid.toString()); });
});