簡體   English   中英

如何獲取使用JavaScript加載的標簽值

[英]How to get label value which loads with javascript

我有這樣的鏈接。 它來自instagram api。

http://localhost:60785/access_token.aspx/#access_token=43667613.4a1ee8c.791949d8f78b472d8136fcdaa706875b

如何從代碼隱藏中獲取此鏈接? 我可以用js接受它,但是分配給label后我無法得到它。 我的意思是:

<script>
    function getURL(){
        document.getElementById('lblAccessToken').innerText = location.href;
    }
</script>

此js函數在body onload事件中。 如何從代碼隱藏中獲取此innerText值?

如果您使用的是ASP.NET 4.0和jQuery,則相當簡單。 否則,您可能必須處理混亂的ID,並且必須自己處理DOMReady。 嘗試這個

標記

<asp:Label ID="lblAccessToken" runat="server" ClientIDMode="Static"></asp:Label>

JavaScript的

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script>
    $(document).ready(function(){
        var myToken = GetHashParameterByName("access_token");
        $("#lblAccessToken").html( myToken );
    });

    function GetHashParameterByName(name) {    
        var match = RegExp('[#&]' + name + '=([^&]*)')
                .exec(window.location.hash);
        return match && decodeURIComponent(match[1].replace(/\+/g, ' '));    
    }
</script>

您想要Page_Load上的值正確嗎? 我還沒有想出一種方法來獲取Page_Load上的哈希值。我通常會執行以下操作之一

  1. 將哈希值傳遞給jQuery ajax方法並將其存儲在其中。
  2. 抓取哈希值並將其轉換為查詢字符串后重定向到同一頁面

JavaScript的

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script>
    $(document).ready(function(){
        var myToken = GetHashParameterByName("access_token") || "";
        if(my_token !=== ""){
            window.location = window.location.split("/#")[0] + "?access_token=" + myToken;
        }
    });

    function GetHashParameterByName(name) {    
        var match = RegExp('[#&]' + name + '=([^&]*)')
                .exec(window.location.hash);
        return match && decodeURIComponent(match[1].replace(/\+/g, ' '));    
    }
</script>

現在在Page_Load上,像抓它一樣

string token = Request.QueryString["access_token"];

請注意,它需要再往返服務器一次,因此效率不高。 但這就是我要做的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM