2009-12-22 42 views
-3

我有以下代碼,使用jQuery編寫:如何用變量值替換鏈接的href屬性的一部分?

var strval = '22' 
$("#quicknote").attr("href", 
    "javascript:location.href=/'http://site.com/notes/add?projects=/'+ strval") 

這導致以下屬性:

<a href="javascript:location.href='http://site.com/notes/add?projects='+'strval'" 
    id="quicknote"> 

但是,我想要的是:

<a href="javascript:location.href='http://site.com/notes/add?projects='+'22'" 
    id="quicknote"> 

任何jQuery嚮導都知道我怎麼可能達到這個結果?

回答

6

嘗試:

var strval = "22"; 
$("#quicknote").attr("href", 
"javascript:location.href='http://site.com/notes/add?projects=" + strval + "'"); 

注意位置和行情的類型。

在一個側面說明,我不完全知道你爲什麼會不要這樣做,而不是:

var strval = "22"; 
$("#quicknote").attr("href", 
    "http://site.com/notes/add?projects=" + strval + "'"); 

即在孤單的例子中,沒有必要的JavaScript。

最後,由於您使用的是jQuery,所以我不會把Javascript放在這樣的href中。相反,添加click()處理程序:

$("#quicknote").click(function() { 
    window.location = "http://site.com/notes/add?projects=22"; 
    return false; 
}); 
+1

做得好。謝謝! – AnApprentice 2009-12-22 03:55:54

-2

jQuery的嚮導告訴你,這是可能的,但它只是無關jQuery的,那你的回答是:

你的報價錯誤!

而且我沒有理由投票給我,因爲我以非常非常非常專業的方式回答了最初的問題。