2013-01-18 80 views
0

我公司目前擁有jQuery的變量作爲JQuery選擇器無效?

var location = urlParams["location"]; //grabs URL parameter generated from earlier function 
alert (location); // alerts the value WEST 
alert ($("#" + location)); //returns [object Object] 
var name = $("#" + location).attr("name").split("."); 
alert (name); // no alert box appears 
var css = name[0] + "px " + name[1] + "px"; 
$("#main-div").css("background-position",css) 
alert ("Even this alert won't appear?"); 

的這些行的代碼執行鍼對此HTML:爲name產生

<a class="nav-links r1s1" id = "WEST" name="0.0" href="test.php?loc=WEST"></a> 

沒有價值。後來警報甚至不會出現,這導致我相信這條線路有什麼問題:

var name = $("#" + location).attr("name").split("."); 

有什麼我做錯了嗎?

+2

您*可*已經編輯了問題而不是刪除和重新發布,但也可以使用。 –

+1

最有可能的.attr(「name」)沒有返回一個字符串,使分割未定義。代碼在哪裏運行?聽起來像是在錨標記存在之前運行。 –

+0

控制檯中是否有任何錯誤消息? – romainberger

回答

0

修改這一行似乎解決它。

var location = String(urlParams["location"]); 

謝謝大家。

-1

我這取決於你想要第一哪一部分覺得還是第二,你需要做的是:

var name = $("#" + location).attr("name").split(".")[0]; 

var name = $("#" + location).attr("name").split(".")[1]; 
+0

如果他沒有指定他想要的部分,它只會提示一個數組,它不會創建錯誤 – romainberger

+0

啊誤會,應該仔細閱讀代碼。 –