2013-07-19 91 views
0

我試圖將一個錨標記添加到ID爲#photo的div中。然而,href包含密鑰對數據以及超鏈接。寫這行代碼的正確方法是什麼?在jquery中使用錨標記和href prepend並追加

理想我想的代碼行是如下

$('#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>'); 

照片是一個jquery變量保持上傳照片的名稱。你如何使用jQuery變量,並使用超鏈接沒有超鏈接我知道它很簡單,如'+ nameofvariable +',但隨着引用使用雙引號的超鏈接變得困難。

感謝

+0

爲什麼要使用「的javascript:」 HREF,而不是一個onclick? – Jacob

回答

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

另一種方法是使用雙引號的單引號字符內:

+0

var temp ='{「test」:「http://www.google.com」}'; – verbanicm