Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >由jquery生成的表没有正确显示

由jquery生成的表没有正确显示
EN

Stack Overflow用户
提问于 2014-07-10 13:48:06
回答 1查看 59关注 0票数 0

在我的spring应用程序中,我的每个视图都有这样的结构( jsp代码呈现后的html代码):

代码语言:javascript
运行
AI代码解释
复制
<!-- Nav tabs -->
<ul id="mainTab" class="nav nav-tabs" role="tablist">
    <li class="active"><a href="#home-Fornecedor" data-toggle="tab">Listagem</a></li>
    <li><a href="#cadastra-Fornecedor" data-toggle="tab">cadastra</a></li>
    <li><a href="#altera-Fornecedor" data-toggle="tab">altera</a></li>
    <li><a href="#remove-Fornecedor" data-toggle="tab">remove</a></li>
</ul>
<!-- Tab panes -->
<div class="tab-content">
    <div class="tab-pane active" id="home-Fornecedor">
        <div class="panel panel-default">
            <div class="panel-heading">Listagem</div>
            <div class="panel-body">
                <div class="row">
                    <div class="col-md-4">
                        <div class="btn-group">
                            <button type="button" class="btn btn-default items">5</button>
                            <button type="button" class="btn btn-default items">10</button>
                            <button type="button" class="btn btn-default items">15</button>
                            <button type="button" class="btn btn-default items">20</button>
                        </div>
                    </div>
                    <div class="col-md-4"></div>
                    <div class="col-md-4">
                        <div class="btn-group">
                            <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">Ordem <span class="caret"></span>

                            </button>
                            <ul class="dropdown-menu dropdown-menu-right" role="menu">
                                <li><a class="ordem" href="0">id</a></li>
                                <li><a class="ordem" href="1">cnpj</a></li>
                                <li><a class="ordem" href="2">razaoSocial</a></li>
                                <li><a class="ordem" href="3">endereco</a></li>
                                <li><a class="ordem" href="4">contato</a></li>
                            </ul>
                        </div>
                    </div>
                </div>
            </div>
            <table class="table" id="main-Fornecedor">
                <thead>
                    <tr>
                        <th class="col" data-property="#"></th>
                        <th class="col" data-property="id">id</th>
                        <th class="col" data-property="cnpj">cnpj</th>
                        <th class="col" data-property="razaoSocial">razaoSocial</th>
                        <th class="col" data-property="endereco">endereco</th>
                        <th class="col" data-property="contato">contato</th>
                        <th class="col" data-property=""></th>
                    </tr>
                </thead>
                <tbody class="content"></tbody>
                <tfoot>
                    <tr>
                        <td class="comando" data-nome="altera" data-action="/loja/Fornecedor/altera"></td>
                        <td class="comando" data-nome="remove" data-action="/loja/Fornecedor/remove"></td>
                    </tr>
                </tfoot>
            </table>
            <div align="center">
                <ul class="pagination pagina"></ul>
            </div>
        </div>
    </div>
    <div class="tab-pane" id="cadastra-Fornecedor">...</div>
    <div class="tab-pane" id="altera-Fornecedor">...</div>
    <div class="tab-pane" id="remove-Fornecedor">...</div>
</div>

在选项卡Home中,我使用json文件生成一个表来填充它。当我单击带有文本cadastraaltera的按钮,在同名的选项卡中,在某些视图中插入类似于此的新结构时,将正确生成此表。最后一个表是使用集群行生成的。

表的渲染代码如下:

代码语言:javascript
运行
AI代码解释
复制
<table class="table" id="Endereco">
    <thead>
        <tr>
            <th class="col" data-property="#">#</th>
            <th class="col" data-property="id">id</th>
            <th class="col" data-property="logradouro">logradouro</th>
            <th class="col" data-property="numero">numero</th>
            <th class="col" data-property="complemento">complemento</th>
            <th class="col" data-property="bairro">bairro</th>
            <th class="col" data-property="cidade">cidade</th>
            <th class="col" data-property="estado">estado</th>
            <th class="col" data-property="cep">cep</th>
            <th class="col" data-property=""></th>
        </tr>
    </thead>
    <tbody class="content"></tbody>
    <tfoot>
        <tr>
            <td class="comando" data-nome="altera" data-action="Endereco/altera"></td>
            <td class="comando" data-nome="remove" data-action="Endereco/remove"></td>
        </tr>
    </tfoot>
</table>

在表中插入行的jquery代码如下:

代码语言:javascript
运行
AI代码解释
复制
function load_content(lista, target, pagina, items, ordem, entity) {
    var atributos = [];
    $(".col").each(function () {
        var property = $(this).data('property');
        atributos.push(property);
    });

    $.ajax({
        type: 'GET',
        url: lista,
        data: {
            pagina: pagina,
            items: items,
            ordem: ordem
        }
    }).done(function (data) {
        var json = jQuery.parseJSON(data);
        target.find("tbody.content").empty();
        $.each(json.item, function (index, item) {
            var row = $('<tr>');
            console.log(':linha');
            for (var i = 0; i < atributos.length; i++) {
                if (atributos[i] == '#') {
                    console.log('::checkbox');
                    row.append('<td><input type="checkbox" name="' + entity + '" value="' + item.id + '"></td>');
                } else if (atributos[i] == '') {
                    console.log('::comandos');
                    var col = $('<td>');
                    var group = $('<div class="btn-group">');
                    $(".comando").each(function () {
                        var nome = $(this).data("nome");
                        var action = $(this).data("action");
                        group.append('<button type="button" class="btn btn-sm btn-primary action" data-target="' + nome + '-' + entity + '" data-action="' + action + '/' + item.id + '">' + nome + '</button>');
                    });
                    col.append(group);
                    row.append(col);
                } else {
                    var token = item[atributos[i]];
                    console.log('::token = ' + token);
                    row.append('<td>' + token + '</td>');
                }
            }
            target.find("tbody.content").append(row);
            target.find("tfoot").each(function () {
                $(this).hide();
            });
        });
    });
}

上面的代码用于创建两个表:主页面中的表,或者cadastraaltera选项卡中的表(如果需要的话)。

当我在浏览器中打开此页面并单击按钮cadastra时,我得到以下信息:

在浏览器中查看开发人员工具时,我注意到在标记<tbody class="content"></tbody>中,脚本生成一个大行(<tr>),其内容为3(图像中的块<td>...</td>应该是一行的开始和结尾),如下所示:

但是在我的json文件中,我只有一个条目,它显示在表中,其中有一条垃圾文本,我不知道从哪里来。

有人能告诉我这里出了什么问题吗?

小提琴手:http://jsfiddle.net/klebermo/h8Jnv/

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-10 14:44:04

在收集要循环的属性时,您需要更加精确,例如:

代码语言:javascript
运行
AI代码解释
复制
$("#TargetedTable .col").each(function () {
    var property = $(this).data('property');
    atributos.push(property);
});

否则,for (var i = 0; i < atributos.length; i++)的循环将尝试从JSON中插入不存在的值。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24686879

复制
相关文章
Java之方法重载篇(我重载了,你要如何来调用我。。)
4. ## 如何调用?    由课前引言中的示例可知,调用具有“重载关系”的方法时,传递的实参类型决定了所调用的方法。    当实参类型是整型,那么系统会相应的调用形参同样是整型的int square(int x)方法;当实参类型是浮点型,那么系统会相应的调用形参同样是整型的int square(double y)方法;    方法调用跟形参变量名(x,y)没有关系,与形参类型有关。
CN_Simo
2022/05/10
2750
Java之方法重载篇(我重载了,你要如何来调用我。。)
Android如何调用so文件
下面通过一个安卓调用C++代码打印字符串的实例介绍一下在Android Studio中使用最新的编译方式编译出so文件的步骤。
用户5521279
2020/03/05
10.6K0
Android如何调用so文件
【Android NDK 开发】JNI 方法解析 ( C/C++ 调用 Java 方法 | 函数签名 | 调用对象方法 | 调用静态方法 )
调用 jclass GetObjectClass(jobject obj) 或 jclass FindClass(const char* name) 方法 , 获取 jclass 类型变量 ;
韩曙亮
2023/03/27
8.6K0
【Android NDK 开发】JNI 方法解析 ( C/C++ 调用 Java 方法 | 函数签名 | 调用对象方法 | 调用静态方法 )
Android调用相机与相册的方法
Android调用相机与相册的方法 操作流程 点击拍摄 效果图 点击相册选择 效果图 拒绝权限的情况 效果图 功能实现 项目配置 1.先在项目根目录的build.gradle的repositories添加: 2.在build.gradle(:app)的dependencies添加: 3.添加提示dialog样式 4.添加底部dialog样式 底部dialog弹出动画(dialog_in_anim.xml) 底部dialog关闭动画(dialog_out_anim.xml) 5.添加权限 6.在Android
是阿超
2022/08/07
2K0
Android调用相机与相册的方法
Android如何调用摄像头
第一步必须加入调用摄像头硬件的权限,拍完照后我们要将图片保存在SD卡中,必须加入SD卡读写权限,所以第一步,我们应该在Android清单文件中加入以下代码
黄啊码
2020/05/29
1.5K0
android 从相册选择图片_android调用相册并显示图片
public class MainActivity extendsAppCompatActivity {int REQUEST_CODE = 0;privateNineGridImageView ngiv;private ArrayListphotos;privateDialog dialog;privatecn.com.jwtimes.www.jwtimes.mAdapter mAdapter1;
全栈程序员站长
2022/11/08
1.7K0
Spring杂谈 | 从桥接方法到JVM方法调用
这些代码对我之前也造成了不小疑惑,在彻底弄懂后通过本文分享出来,也能减少大家在阅读代码过程中的障碍!
程序员DMZ
2020/07/06
1.6K0
android-fragment-重新显示调用的方法
@Override public void onHiddenChanged(boolean hidden) { super.onHiddenChanged(hidden); if (!hidden) { getUserInfo(UserManager.getManager(getContext()).getUserId()); } }
tea9
2022/07/16
4070
AllJoyn+Android开发案例-android跨设备调用方法
项目需要涉及AllJoyn开源物联网框架。前面主要了解了一些AllJoyn基本的概念,像总线,总线附件,总线对象,总线接口这样的概念,以及之间的关系和跨设备、平台的调用功能。项目最终的目的实现是,跨平台的方法调用如:windows调用android,以及对于设备事件的订阅功能。
全栈程序员站长
2022/06/25
4480
AllJoyn+Android开发案例-android跨设备调用方法
java 异步调用方法_java异步调用方法有哪些?如何实现异步调用?
大家好,又见面了,我是你们的朋友全栈君。 你知道java异步调用方法都有哪些吗?下面的文章内容,就对这方面的问题做了一下整理,一起来看看java异步调用的方法吧! 1、利用Spring的异步方法去执行
全栈程序员站长
2022/09/14
4K0
如何通过反射调用对象的方法?
import java.lang.reflect.Method; class MethodInvokeTest { public static void main(String[] args) throws Exception { String str = "hello"; Method m = str.getClass().getMethod("toUpperCase"); System.out.println(m.invoke(str));
唐怀瑟
2018/08/30
2.9K0
Android JNI 调用时缓存字段和方法 ID
在 JNI 去调用 Java 的方法和访问字段时,最先要做的操作就是获得对应的类以及对应的方法 id。
音视频开发进阶
2019/07/26
1.1K0
点击加载更多

相似问题

如何从Android调用RESTful方法?

16

Android:如何从服务中调用方法

110

如何从android库类调用方法

43

如何从AngularJS指令调用Android方法?

12

android:如何从超链接调用方法

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档