1
我想在我的javascript函數中獲得代碼隱藏值。我的場景是,可以說我有兩個用戶控件A和B. 我從UserControl A設置全局值。當我來到UserControl B的頁面加載時,我正在訪問該值並將其放入隱藏字段中。 我在UserControl B上有一個按鈕,它在客戶端單擊時調用一個javascript函數。 在這個函數上,我試圖捕獲hiddenfields的當前值。但是我總是從隱藏字段值中獲得0。我做錯了什麼?有人能幫我嗎?在javascript函數中獲取代碼隱藏值
下面是代碼:
<%@ Control Language="vb" AutoEventWireup="false" CodeBehind="DetailsForm.ascx.vb" Inherits="TD_Web_App.DetailsForm" %>
<script type="text/javascript">
function GetNextRecord() {
debugger;
var currentVal = $get("DetailsFormPanel_DetailsForm1_HFDetails").value;
//clientID of my hidden field
}
</script>
<asp:UpdatePanel ID="DetailInfoUpdatePanel" runat="server" UpdateMode="Conditional" >
<ContentTemplate>
<table id="TDPropsGrid" runat="server" width="250px" ></table>
<asp:Button ID="Cmd_Next" runat="server" Text="Next" Width="100px" SkinID="ButtonSkin" UseSubmitBehavior="false" OnClientClick="GetNextRecord()"/>
<asp:LinkButton ID="LinkButtonDetails" runat="server" style="display:none;">
LinkButton
</asp:LinkButton>
</ContentTemplate>
</asp:UpdatePanel>
<asp:HiddenField ID="HFDetails" runat="server" />
在後面的代碼:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
showData() 'some function
HFDetails.Value = CurrentRecordCounter ' global value coming from other usercontrol
End Sub
'Private Sub Page_PreRender(sender As Object, e As System.EventArgs) Handles Me.PreRender
' HFDetails.Value = CurrentRecordCounter
'End Sub
我試圖把
<asp:HiddenField ID="HFDetails" runat="server" />
更新面板內,什麼都沒有改變。
但是在GetNextRecord()時,currentVal總是「0」。爲什麼?
嘗試VAR currentVal = $( 「#」 DetailsFormPanel_DetailsForm1_HFDetails「)VAL(); – ssilas777
你檢查隱藏字段的值在HTML源在瀏覽器中?:這是不是設置值的代碼隱藏,或者它是不是正確讀取它的JavaScript? –
感謝幫助的人們。對此遲到抱歉。不知道如何,但相同的代碼正在另一個開發環境中工作。現在一切都很好,我會在有空閒時間的情況下進行調查,再次感謝您的投入。 – nilarya