0

我正在尝试将锚标记附加到 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+' 一样简单,但是随着使用双引号的超链接的引入,它变得很困难。

谢谢

4

1 回答 1

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";

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

于 2013-07-19T16:57:41.540 回答