使用jQuery动态更新html表,使用jQuery进行复杂对象

时间:2010-02-06 13:23:09

标签: jquery json

我还是JSON / jQuery的新手。

我需要一些关于如何在客户端上动态填充Html表的快速指导。我的表有固定的列,但行根据检索的数据动态增长。

假设我在服务器上发布了一个Web方法(GetActiveUsers),比如n-用户。 我正在使用这个sql:

select userId, Title,Surname,FirstName from Users where status=1

请给我示例代码

修改

我在这篇文章here上有解决方法 谢谢你们

1 个答案:

答案 0 :(得分:3)

这是 jQote jQuery javascript模板引擎的完美应用。 您可以从此处获取:http://aefxx.com/jquery-plugin/jqote

作为一个例子考虑以下内容:

// Example of your json data ... an array of user objects
[{"Title": "Dr.", "Surname": "House", "Firstname": "Geronimo"},
  {"Title": "Mr.", "Surname": "Franklin", "Firstname": "Benjamin"}]

现在,这是您在HTML(或任何输出文件)中定义的模板:

<script type="text/html" id="template">
    <![CDATA[
        <tr>
            <td class="no"><%= j+1 %></td>
            <td class="title"><%= this.Title %></td>
            <td class="user"><%= this.Firstname + " " + this.Surname %></td>
        </tr>
    ]]>
</script>

所以,我们差不多完成了。让我们定义我们的包含表并在json数据上调用jQote 神奇地填满桌子。

... your markup ...

<table id="users"></table>

... more markup ...

<script type="text/javascript">
    var jsondata = xxx // get your data somehow

    // Now call jQote on the template providing your json data
    $('#template').jqote(jsondata).appendTo($('#users'));
</script>

这就是全部(好吧,这只是开始,jQote比我在这里告诉你的更强大。)

希望你喜欢它,试一试。

BTW:使用模板的容器是完全合法的标记。并且浏览器无论如何都不会显示它。