日期:2014-05-16  浏览次数:20430 次

写个JavaScript控制生成表格(GridView)的类
GridView,是ASP.NET的一个显示数据的表格控件。

我想写一个JS的,先问一个很直接的问题吧。

这个类,我可以传递一个参数,列名数组=["姓名","年龄",……],用来控制显示SQL查询出来的数据集里的哪些列。

但有些列,我想显示的时候定制一下,原来GridView里可以这么写

<%# MyFun(Eval("H"), Eval("HPrecision"))%>

MyFun是一个后台的C#代码,H、HPrecision是两个列的名称,功能是通过MyFun,把H、HPrecision这两个列转换为一个字符串,显示在这里,这样就达到了定制某些列的功能。


可是我写一个JavaScript代码,如何来控制这些呢?

------解决方案--------------------
<script type="text/javascript">
var gvItem = function(colPar, fun) {
this.colPar = colPar;
this.fun = fun;
}
var gvitem = new gvItem(["c", "d"], function(myParArr) {

return myParArr[0] + "|" + myParArr[1];

});
var arr = ["a", "b", gvitem];
function arrTest(myArr) {
var strs = [];
for(var i in myArr)
{
if (typeof myArr[i] == 'string') {
strs.push(myArr[i]);
} else {
strs.push(myArr[i].fun(myArr[i].colPar));

}
}
return strs.join(", ");
}


function Button1_onclick() {
alert(arrTest(arr));
}

</script>