簡體   English   中英

在JavaScript中獲取ASP.NET標簽的文本或值

[英]Get ASP.NET label's text or value in JavaScript

我想在ASP Web表單中將一串數據從C#傳輸到JavaScript。 我的方法是在C#中將數據設置為ASP標簽的文本,然后在JS中按ID獲取標簽的文本。

C#代碼(ascx.cs文件):

    List<Event> eventList;

    protected void Page_Load(object sender, EventArgs e)
    {
        string message = string.Empty;
        SPSite franasabank = new SPSite("http://lbshrptweb/sites/fransabank/");
        SPWeb calendar = franasabank.OpenWeb();
        SPList list = calendar.Lists["Fransabank Calendar"];
        eventList = new List<Event>();
        foreach (SPListItem oItem in list.Items)
        {
            // Access each item in the list...  
            DateTime startTime = (DateTime)oItem["Start Time"];
            DateTime endTime = (DateTime)oItem["End Time"];
            string status = (String)oItem["Status"];
            string title = oItem.Title;
            string description = (String)oItem["Description"];
            Event calendar_event = new Event(startTime, endTime, status, title, description);
            eventList.Add(calendar_event);
        }
        foreach (Event item in eventList)
        {
            message += item.Title + " " + item.Description + item.StartDate + "-" + item.EndDate + "-" + item.Status + "\n";
        }

        Label1.Text = message;
    }

顯示Label(ascx文件)的HTML片段:

<div data-ng-app="Calendar">
   <div data-ng-controller="CalendarController" id="mycontroller">
     <div class="row " data-ng-init="Initialize()">
        <asp:Label ID="Label1" runat="server" Text="Label" ></asp:Label>

JavaScript代碼:

<script>
    var a = document.getElementById('<%= Label1.ClientID %>');
    console.log(a);
</script>

我在變量'a'中收到數據為null。 我試過了

var a = document.getElementById('<%= Label1.ClientID %>').innerHTML;

但它也是空的

聽起來像Javascript在加載標簽之前運行

  1. 將js放在頁面上的<asp:Label> 最好在</body>之前:

      <script> var a = document.getElementById('<%= Label1.ClientID %>'); console.log(a); </script> </body> 
  2. 或者,您可以使用jQuery $(document).ready()包圍代碼塊:

     <script> $(document).ready(function () { var a = document.getElementById('<%= Label1.ClientID %>'); console.log(a); }); </script> 

暫無
暫無

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

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