[英]Jquery to get value from Server Tag data bind
嗨,我正在使用jquery從ASP.NET中的服務器標簽獲取值。 所有這些javascript都在同一頁面上。 我已經試過了
<asp:TextBox ID="LastNameTextBox" runat="server" Text='<%# Bind("LastName") %>' />
和jQuery
$("#<\%=LastNameTextBox.ClientID%>").val()
注意,我必須對%進行轉義,以便整個引用都是一個字符串。 我不知道為什么會這樣。 我看到的示例不需要轉義%。 我還在另一篇文章中發現我應該使用該類,所以我做到了
<asp:Label ID="LastNameLabel" runat="server" Class = LastNameClass" Text='<%# Bind("LastName") %>' />
而jQuery是這個
$(".LastNameClass").val()
這使我更進一步,但它返回了函數而不是值。 我什么也沒有將val()更改為text()。 我之所以這樣想是因為我要綁定數據,並且標簽位於表單中使用的模板中? 關於下一步應該嘗試的任何見解或建議?
編輯:這是代碼
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:LinqDataSource ID="LinqDataSource1" runat="server"
ContextTypeName="SchoolDataContext" EnableUpdate="True" EntityTypeName=""
TableName="People">
</asp:LinqDataSource>
<asp:FormView ID="FormView1" runat="server" AllowPaging="True"
DataKeyNames="PersonID" DataSourceID="LinqDataSource1">
<EditItemTemplate>
PersonID:
<asp:Label ID="PersonIDLabel1" runat="server" class="PersonalIDLablel1" Text='<%# Eval("PersonID") %>' />
<br />
LastName:
<asp:TextBox ID="LastNameTextBox" runat="server" class="LastNameClass1" onBlur="textBlur();"
Text='<%# Bind("LastName") %>' />
<br />
FirstName:
<asp:TextBox ID="FirstNameTextBox" runat="server"
Text='<%# Bind("FirstName") %>' />
<br />
HireDate:
<asp:TextBox ID="HireDateTextBox" runat="server"
Text='<%# Bind("HireDate") %>' />
<br />
EnrollmentDate:
<asp:TextBox ID="EnrollmentDateTextBox" runat="server"
Text='<%# Bind("EnrollmentDate") %>' />
<br />
<asp:LinkButton ID="UpdateButton" runat="server" CausesValidation="True"
CommandName="Update" Text="Update" />
<asp:LinkButton ID="UpdateCancelButton" runat="server"
CausesValidation="False" CommandName="Cancel" Text="Cancel" />
</EditItemTemplate>
<ItemTemplate>
PersonID:
<asp:Label ID="PersonIDLabel" runat="server" class="PersonalIDLablel" Text='<%# Eval("PersonID") %>' />
<br />
LastName:
<asp:Label ID="LastNameLabel" runat="server" class="LastNameClass" Text='<%# Bind("LastName") %>' />
<br />
FirstName:
<asp:Label ID="FirstNameLabel" runat="server" Text='<%# Bind("FirstName") %>' />
<br />
HireDate:
<asp:Label ID="HireDateLabel" runat="server" Text='<%# Bind("HireDate") %>' />
<br />
EnrollmentDate:
<asp:Label ID="EnrollmentDateLabel" runat="server"
Text='<%# Bind("EnrollmentDate") %>' />
<hr/>
<asp:LinkButton ID="EditButton" runat="server" CausesValidation="False"
CommandName="Edit" Text="Edit" />
</ItemTemplate>
</asp:FormView>
</form>
您可以使用text()
或html()
。
<asp:Label runat="server" ID="LastNameLabel" Text="This is a text"
ClientIDMode="Static"></asp:Label>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
var text = $("#LastNameLabel").text();
alert(text);
});
</script>
確保使用ClientIDMode="Static"
因為LastNameLabel
的ID在FormView
之外不可用。
然后,您可以在jQuery選擇器中使用#LastNameLabel
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.