0

我有一个从我的数据库中填充的表。我的目标是在用户从列表中选择另一个元素时仅使用更新表。

为此,我正在使用 Ajax。我有我使用 ajax 的 HTML 模板:

{literal}
<script type="text/javascript">

function refreshToolPrivileges($Object)
{
$.ajax({
    url: '/ajax/user_management/refresh_tool_privileges'+$Object,
    cache: false,
    dataType: 'xml',
    success: function(xml) {
        $(xml).find("Row").each(function(){

        });     
    }
});
}
</script>
{/literal}

Ajax 正在调用一个 php 文件,我在其中返回一个格式化的 xml 文件:

$format =
"\n\t<Row>
\t\t<group_id>{$fin_array['group_id']}</group_id>
\t\t<user_id>{$fin_array['user_id']}</user_id>
\t\t<Object>{$fin_array['Object']}</Object>
\t\t<Read>{$fin_array['Read']}</Read>
\t\t<Update>{$fin_array['Update']}</Update>
\t\t<Insert>{$fin_array['Insert']}</Insert>
\t\t<Delete>{$fin_array['Delete']}</Delete>
\t</Row>";

echo "<Result>" .$format. "\n</Result>";

现在,我不知道如何从返回的 XML 中获取日期并自动更新我的表。

这是表格:

<table width='700px' id="employeetable" class="tablesorter" style='table-layout:fixed;'>
<thead>
    <tr>
        <th>Group Id</th>
        <th>User Id</th>
        <th>Object</th>
        <th>Read</th>
        <th>Update</th>
        <th>Insert</th>
        <th>Delete</th>
    </tr>
</thead>
<tbody>
    {foreach from=$privileges item=privilegesItem name=foo}
    <tr>
        <td>{$privilegesItem['group_id']}</td>
        <td>{$privilegesItem['user_id']}</td>
        <td>{$privilegesItem['Object']}</td>
        <td>{$privilegesItem['Read']}</td>
        <td>{$privilegesItem['Update']}</td>
        <td>{$privilegesItem['Insert']}</td>
        <td>{$privilegesItem['Delete']}</td>
    </tr>
    {/foreach}
</tbody>
</table>
4

1 回答 1

0

这是解决方案:

$.ajax({
    url: '/ajax/user_management/refresh_tool_privileges_table/'+$Object,
    cache: false,
    dataType: 'xml',
    success: function(xml) {
        $(xml).find("Row").each(function(){
            //alert('aaa');
            var group_id =$(this).find("group_id").text();
            var user_id=$(this).find("user_id").text();
            var Object=$(this).find("Object").text();
            var Read=$(this).find("Read").text();
            var Update=$(this).find("Update").text();
            var Insert=$(this).find("Insert").text();
            var Delete=$(this).find("Delete").text();

            $('tbody').remove();
            // jquery create a new tbody and insert aftre thead
            $('#employeetable').append(
                    '<tbody>'+
                    '<tr>'+
                        '<td>'+group_id+'</td>'+
                        '<td>'+user_id+'</td>'+
                        '<td>'+Object+'</td>'+
                        '<td>'+Read+'</td>'+
                        '<td>'+Update+'</td>'+
                        '<td>'+Insert+'</td>'+
                        '<td>'+Delete+'</td>'+
                    '</tr>'+
                    '</tbody>');



        });     
    }
});

我正在移除主体,然后使用新变量创建一个新主体。

于 2012-06-13T15:17:20.607 回答