2013-02-22 60 views
1

我有頁面上的文字控制(有一些數據)。我想訪問它在JavaScript中,並希望把一些文字。請告訴我如何訪問JavaScript中的文字控制。我用下面的代碼 -想要訪問字面值到javascript

<asp:Literal ID="lblPerInstanceListing" runat="server"></asp:Literal> 

的Javascript嘗試:

var value= document.getElementById('<%=lblPerInstanceListing.ClientID %>') 

我得到這個空值的回報。

+0

一個asp文字控件不會在html中發出標籤(您可以在瀏覽器中使用view-source進行驗證),所以DOM沒有一個id。您可以使用作爲DOM一部分的asp:Label(生成span標籤)。另一種選擇是使用父元素。 – rene 2013-02-22 12:18:07

回答

4

ASP.NET Literal控件本身不會將任何HTML插入到網頁中。您的Literal控件是您將在您的代碼中設置的文本或HTML的佔位符。

你應該換你的文字在一個DIV或SPAN並給予該DIV或SPAN在JavaScript

的WebForm的ID和參考:

<span id="yourId"><asp:Literal ID="lblPerInstanceListing" runat="server"></asp:Literal></span> 

的JavaScript: 這段代碼解決。

var value= document.getElementById('yourId').innerText; 
-2

這是一個Literal。它呈現文字HTML到頁面。它不會呈現任何您可以在客戶端訪問的與ClientID匹配的容器。

要麼將​​divspan轉換成這個文字帶有您可以使用的ID,一個LabelPanel控件確實會渲染一個包裝spandiv您可以使用。

+0

打我吧:) – 2013-02-22 12:20:29

0
<span id="yourId" runat="server"></span> 

JS:

var value= document.getElementById('yourId'); 

這不是更好,然後使用此代碼? 如果您需要,您可以將span enableviewstate放置爲false。