2009-12-15 37 views
1

我希望能够打印出x行和大约10列的表格。但是,我希望能够选择表格中的行,就好像它是一个多选框。选择表格的行将导致一个额外的文本区域显示有关该行数据的附加信息。Ajax控制表行的最佳方式

在AJAX中做这件事的最好方法是什么?

回答

1

有一些事情你需要去,但我会给你一个你需要什么的想法。对于每一行,您都需要在其上附加一个点击侦听器,或者您允许点击事件向上冒泡并捕捉到该表,然后检查它所在的行(here's how the YUI folks do this)。在每个HTML元素上,您都需要一些方法来识别哪一行被点击。它可以是HTML ID的一部分,或者您可以使用trElement.getAttribute('yourAttribute')检索的完全不同的属性。

一旦你有了id,那么你可以显示一个textarea或者进行一次AJAX调用来获取额外的数据,然后显示一个textarea。您需要定义一些接受id的webservice,并返回要显示的HTML或可以解析的JSON数据,然后自行构建显示。取决于您发送的数据量是多少,最好是返回JSON还是HTML,尽管我倾向于使用JSON。如果您可以选择多行,则需要存储哪些行在JavaScript中的某处被点击过。这就像有一个变量是一组单击的ID一样简单,并且每次单击该行时添加或删除它都基于它是否已经存在。您还可以为每个选定的行添加一个类,以便背景颜色发生变化或选择某个行时。

在高层次上,这就是它的全部,但如果您有更具体的问题,我可以详细说明具体的部分。