在jquery prepend和append中使用锚标签和href

时间:2013-07-19 16:35:01

标签: jquery json

我正在尝试将一个锚标签附加到ID为#photo的div中。但是href包含密钥对数据以及超链接。编写这行代码的正确方法是什么。

理想情况下,我希望代码行如下

 $('#photo').prepend('<a href="javascript:pixlr.edit({image:'http://mysite.com/photo    /+'photo'+', title:'+photo+', service:'express',exit:'http://mysite.com', method:'get', locktarget: 'true', target:'http://mysite.come/upload', locktitle :'true'});" id="uploadedPhotoEdit" title="click to enhance photo before sharing"></a>');

photo是一个jquery变量,用于保存上传照片的名称。你如何使用jquery变量并使用没有超链接的超链接我知道它就像'+ nameofvariable +'一样简单,但是引入使用双引号的超链接变得很困难。

由于

1 个答案:

答案 0 :(得分:0)

一种方法是使JSON对象使用JSON.stringify使该对象成为字符串。如果您打算让不支持JSON.stringify的浏览器使用它,则需要包含以下JS文件:https://github.com/douglascrockford/JSON-js

var photo = "photo.gif";

var pixlrJson  = {
    image : 'http://mysite.com/photo/' + photo,
    title : photo,
    service : 'express',
    exit : 'http://mysite.com',
    method : 'get',
    locktarget : true,
    target : 'http://mysite.come/upload',
    locktitle : true
};

$('#photo').prepend("<a href='javascript:pixlr.edit(" + JSON.stringify(pixlrJSON) + ");' id='uploadedPhotoEdit' title='click to enhance photo before sharing'></a>");

如果您不喜欢该解决方案,可以使用反斜杠转义引号。

var test = "This is a test string that has a \" inside of it";

另一种方法是在单引号字符串中使用双引号: