jquery ajax 获取后台数据表字段存储的html代码

最近在做一个小东西,需要在前台把用户填写的表单(连同html代码)放送到后台数据库中的某字段保存,方便直接把数据取出来并显示该表单。

开始的时候,表单数据提交正常,但是经过ajax获取后返回的数据却无法被解析。开始还以为是html代码存储到数据库之后那些个类似这样的符号‘<’,'>'变成了另外前台没法识别或者解析运行的符号。网上也有人说在ajax返回数据后要把这些个符号转化前台可解析运行的一般符号。但是事实却不是如此。我后来做了个测试,把下面的代码:

<tableid="table" border="2">

        <tr id="a"border="3">

               <th> 工号 </th><th> 姓名 </th><script>document.write(showDL());</script><th>备注</th>

        </tr>

        <tr> 

               <td>  123</td> <tdclass="name"> 11111 </td><script>document.write(STR);</script><td> 334 </td>

        </tr>

</table>

按照上面的流程,把这段代码作为表单项的值存储到后台数据库某字段中,再通过ajax获取到这个数据字段的值,结果是无法解析。后来我做了一下处理,把里面的换行符去掉,变成这样

<tableid="table" border="2"><tr id="a"border="3"><th> 工号 </th><th> 姓名</th><script> document.write(showDL());</script><th>备注</th></tr><tr> <td>  123</td> <tdclass="name"> 11111 </td><script>document.write(STR);</script><td> 334</td></tr></table>

一切就正常了,数据可以被解析。

上面的现象是代码直接作为字符串打印在屏幕上。然而我想要的是返回后被解析的代码段可以被运行并显示出来。网上也有人说把返回的代码段直接赋给变量b,然后通过$('#table').html(b);来实现。经过测试也不行。最终我使用了这样的方法,先把代码打印到屏幕上,再通过jquery获得这段代码,再通过html()方法运行这段代码。大概是这样:

$('#table').html($('#table').text());

最终达到了我想要的效果。个人的一点小总结,如果大家发现有什么错误,可直接回复,或者私聊我。晚安。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值