将后台返回字符串数据转为jquery对象,并做一些操作

将后台返回字符串数据转为jquery对象,并做一些操作

     在 web 开发中,经常会有后台返回 html 字符串的情况,需要在 js 里将其 转为 juery 对象或者 DOM 并做一些处理,下面这是我在实际中遇到的一点问题,记录一下。

问题如下:

     后台获取的字符串是一大段 html , 然后 转为 juery 对象,从中 取出一部分,本来取出来的也是 juery 对象,大致如下 (转为jquery对象,有的浏览器 会格式化 加换行 \r\n)

                                      var str =  “<TD>合计</TD>” +
                                                         “<TD></TD>” +
                                                           “<TD></TD>” +
                                                            “<TD>5</TD>” +
                                                            “<TD>8</TD>” +
                                                            “<TD>4</TD>” +
                                                           “<TD>0</TD>” +
                                                          “<TD>0</TD>” +
                                                         “<TD>17</TD>” +
                                                         “<TD>8</TD>” +
                                                         “<TD>13</TD>” +
                                                          “<TD>9</TD>” +
                                                         “<TD>5</TD>” +
                                                          “<TD>9</TD>” +
                                                         “<TD>0</TD>” +
                                                          “<TD>44</TD>” +
                                                            “<TD>5</TD>”;        

      前台 需要 合并单元格 ,因此要把前三个 <td> 去掉, 原本是想直接 截取字符串,谁知道 不同浏览器 ,在转为 juery 对象时,有的会自己格式化加上换行 \r\n ,有的不会,因此不同浏览器 字符串长度也不同,截取的不一样,后来就通过判断浏览器来解决。

     后来我想了想,这样兼容性很不好,后来我想了想,可以直接通过 操作 jquery 对象删除 td 的,看了看 jquery 手册 ,找到如下方法:

     1、var dd = $(“<tr>”+str+”</tr>”);    //重点就在这里

     2、 var divHtml = dd.find(‘td:eq(0),td:eq(1),td:eq(2)’).remove();     //找到前三个 td 去掉
            alert(dd.html());

    第一步,外层一定要加上 <tr>,不然转为 jquery 对象是 只会转第一个 <td>,后面的都没有了,而且我试了,外面 加<div> 也不行,外面 加<table>可以,不过它会自动在table下面加上 一层 tbody  ,再加一层 tr

   后来总结下,可以转为 jquery 对象时,外层必须加上一层,而且要符合 html 代码的规则,就好比 td 外面要 加 tr

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/111325.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • php 清楚浏览器缓存,如何清除浏览器缓存「建议收藏」

    php 清楚浏览器缓存,如何清除浏览器缓存「建议收藏」头像是根据url指定的,更改头像后url仍然不变,即url指向的图片地址没变,但图片已经更换了因为url没变所以浏览器还是用原来的图片,怎么更改后及时显示新的图片呢?是因为浏览器的缓存吗,怎么用php清楚浏览器缓存呢回复内容:头像是根据url指定的,更改头像后url仍然不变,即url指向的图片地址没变,但图片已经更换了因为url没变所以浏览器还是用原来的图片,怎么更改后及时显示新的图片呢?是因为浏…

    2022年7月18日
    15
  • 基于Ubuntu 的 Parrot ARDrone 2.0的SDK安装以及ardrone_autonomy和tum_ardrone的安装和使用

    基于Ubuntu 的 Parrot ARDrone 2.0的SDK安装以及ardrone_autonomy和tum_ardrone的安装和使用经过了一个多星期的摸索,现在开始慢慢理解ParrotARDrone2.0的使用。现在总结一下遇到的问题,希望用这款无人机的人能够得到一些帮助,毕竟不能总是做一个伸手党。ParrotARDrone2.0是法国的一家无人机的厂商生产的无人机的产品,是parrotardrone1.0的进阶版,摸索的这一个星期我感受到现在对ardrone2.0的支持还是挺棒的。有很多资料,遇到问题

    2022年8月15日
    4
  • mysql 字符串动态拼接_mysql中的字符串的拼接「建议收藏」

    mysql 字符串动态拼接_mysql中的字符串的拼接「建议收藏」字符串的拼接1,Mysql在Java、C#等编程语言中字符串的拼接可以通过加号“+”来实现,比如:”1″+”3″、”a”+”b”。在MYSQL中也可以使用加号“+”来连接两个字符串,比如下面的SQL:Sql代码SELECT’12’+’33’,FAge+’1’FROMT_Employee执行结果Sql代码’12’+’33’FAge+’1’4526452945244526…

    2022年9月26日
    0
  • vscode自动生成html模板_vscode html插件

    vscode自动生成html模板_vscode html插件初学vue,不熟练使用vscode。发现vscode不能新建文件夹,必须从外部建好之后,在文件–打开文件夹中打开。然后在资源管理器中就可以新建文件或者文件夹了。新建文件后缀写html格式,则就是html文件。然后输入英文的!+tab键即可,或者是输入html:5+tab键。…

    2022年8月21日
    6
  • php storm2021.10激活码(JetBrains全家桶)「建议收藏」

    (php storm2021.10激活码)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlH2AE5L25Z5-eyJsa…

    2022年3月28日
    65
  • IDEA 2020激活码_通用破解码

    IDEA 2020激活码_通用破解码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月17日
    201

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号