为了账号安全,请及时绑定邮箱和手机立即绑定

从json返回一个这样的字串,如何把它拼接到onclick里?

从json返回一个这样的字串,如何把它拼接到onclick里?

浮云间 2019-03-06 21:43:02
字符串值为:xx,"><xxfunction escapeHtml(string) {    var entityMap = {        "&": "&amp;",        "<": "&lt;",        ">": "&gt;",        '"': '&quot;',        "'": '&#39;',        "/": '&#x2F;'    };    return String(string).replace(/[&<>"'\/]/g, function (s) {        return entityMap[s];    });};... var esctext = escapeHtml(v.desctext);                        str += "<tr><td>" + esctext + "</td>";                                                    str += '<td><button class="layui-btn layui-btn-danger" onclick="deleteitem(' + type + ',\'' + esctext + '\')">刪除</button>';                        用了escape后td的显示逻辑部分正常,但删除按钮那里不正确,也没法传正确数据到后台,用firefox内视是这样的内容引用文字=>onclick="deleteitem(0,'xx,"><xx')"
查看完整描述

1 回答

?
LEATH

TA贡献1936条经验 获得超6个赞

'可以去掉,最外面的引号统一用单引号试试


那你可以参照以下小栗子:


<!DOCTYPE html>

<html>

<head>

    <title></title>

</head>

<body>

    <div id="box"></div>


    <script type="text/javascript" src="jquery-3.2.1.min.js"></script>

    <script type="text/javascript">

        var a = 'one', b = 'two';

        function test(x, y) {

          return '<button onclick="show(\'' + x + '\',\'' + y + '\')">Click Me</button>';

        }

        function show(x, y) {

            console.log(x + '-' + y);

        }

        $('#box').append(test(a, b));

    </script>

</body>

</html>


查看完整回答
反对 回复 2019-03-09
  • 1 回答
  • 0 关注
  • 386 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信