码迷,mamicode.com
首页 > Web开发 > 详细

html端拼html的时候带监听事件的坑

时间:2015-07-10 18:46:45      阅读:230      评论:0      收藏:0      [点我收藏+]

标签:

先上一段后端程序员写的前端代码demo

    function test(a){
        console.log(a)
    }
    var s = "str", str="wtf";
    $("body").append(‘<div class="test" onclick=test(‘+s+‘)>test</div>‘);

猜猜看点击test这个标签的时候会打印出"str"还是"wtf"?

居然是"wtf",wtf!

这段代码在页面里写的html是这样的

<div class="test" onclick="test(str)">test</div>

输出出来的str完全就是一个全局变量嘛,说好的字符串呢。

这种写法耦合不说,遇到这种字符串转变量的就坑爹了。

解决方法,加引号输出

 $("body").append(‘<div class="test" onclick=test("‘+s+‘")>test</div>‘);

这样输出出来的html就是

<div class="test" onclick="test(&quot;str&quot;)">test</div>

 

但是还是不建议这么写。

 

html端拼html的时候带监听事件的坑

标签:

原文地址:http://www.cnblogs.com/childsplay/p/4636320.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!