如你所言,表格是根据json传递过来的文件动态生成的,那么表格的html代码应该是你用script脚本生成的。
在生成表格的html代码时,在每个tr标签中,加上双击要执行的脚本代码,并附带该行的参数(通常是每条记录中的主键,用于区分不同的记录)。在双击后调用的函数中,进行显示该行全部信息的处理。
下面是一段示例:
表格的html代码
<body>
<table border="1">
<thead>
<td>序号</td>
<td>内容</td>
<td> *** 作</td>
</thead>
<tr ondblclick="dc('1')">
<td>1</td>
<td>内容部分</td>
<td><a onclick="del('1')">删除</a>&nbsp&nbsp<a onclick="mod('1')">修改</a></td>
</tr>
</table>
</body>
2.要说明的部分:
html代码中有dc(),del(),mod()三个函数的调用代码,其中的参数在示例中均为“1”,在实际情况中,该参数是根据json数据中,每条记录的主键值动态创建的。
3.在页面的</head>和<body>标签之间,加上处理双击,和删除修改 *** 作的代码
<script>
function dc(param) //处理双击 *** 作
{
//双击 *** 作的具体处理步骤,根据传入的参数param,在json中找到需要显示的数据并将全部信息进行显示(可在新页面中显示,或者利用alert窗口显示,方法很多)
}
funcion del(param) //处理点击“删除”按钮后的 *** 作
{
//删除 *** 作的具体过程,根据传入的参数param,将json数据中对应的数据删除,再重新绘制一遍table
}
function mod(param) //处理点击“修改”按钮后的 *** 作
{
//修改 *** 作的具体过程
//第一步,将table中对应的tr行中的td中的内容修改为可编辑的控件,如input数据框等,输入数据
//第二步,利用ajax将修改后的数据内容及param参数值传递给后台服务,更新数据库
//第三步,取得新的json数据,重新绘制table
}
</script>
既然是用AJAX,当然AJAX是调用服务端的方法访问数据库再对数据库进行增、删、改。首先你要理解WEB编程的原理,当一个网页打开后你和服务端的连接是己经断了的,服务端保存不了你当前的状态。不象CS编程。AJAX是客户端的,你肯定不能直接在前台javascript中访问服务端的数据库。
用AJAX第一步,你必需要写好服务端的一个方法,如写一个删除的方法doDelObject(string id){...}你在客户端就调用这个方法。参数是你要删除数据的ID,如:doDelObject(ID001),然后服务端删除完毕后就会返回这个方法的值给你。删除的具体方法那就和AJAX无关了。
另外,做AJAX有好多框架选择,建议你用jquery,如果是.net2003的话有ajaxpro,2005的话有AjaxControlToolkit等。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)