2012-07-01 31 views
1

我有一個鏈接,當用戶點擊它時,它會將JavaScript文件壓入頁面。除此之外,它還將參數添加到javascript src示例中:jquery從javascript文件中獲取GET變量

<script type="text/javascript" src="javascripfile.js?r=some%values&u=more&values"> 

這不會通過瀏覽器上的URL傳遞。我想知道如何在javascriptfile.js中獲取這些參數?

javascriptfile.js

(function(){ 
    //how to get r value, u value? 
}()); 

感謝您的幫助!

回答

6

請試試這個:http://jsfiddle.net/9Mvxb/http://jsfiddle.net/mKNPT/1/http://jsfiddle.net/mKNPT/3/

請注意如果使用class看到這個演示不舒服:http://jsfiddle.net/24UdH/

API:https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/indexOf

進一步如果y OU想知道爲什麼val.indexOf("?") + 1+1是廢寢忘食?

這應有助於,:)

代碼

$("script").each(function(){ 
    if ($(this).prop('src').split("?")[0].indexOf("javascripfile.js")) 
      value = $(this).prop("src"); 
}); 

var returnStr = value.substr(value.indexOf("?") +1); 

alert(" value after ? is ==> " + returnStr); 

var spliMe = returnStr.split('&'); 

alert("value of R ==> " + spliMe[0]); 

OR

var value = $(".foo").prop("src"); 

    var returnStr = value.substr(value.indexOf("?") +1); 

    alert(" value after ? is ==> " + returnStr); 

    var spliMe = returnStr.split('&'); 

​ 

標籤

<script type="text/javascript" class="foo" src="javascripfile.js?r=some%values&u=more&values"> 
+2

+1不錯的解決方案兄弟:)。 – undefined

+1

@undefined Bruver Howz life':)'謝謝你我會回到這個awesomenss的lemme看到你的答案的地方:) –

+0

很酷,哦,不要提及它:) – undefined