1
자바 스크립트 함수에서 코드 비하인드 값을 가져오고 싶습니다. 내 시나리오는 두 개의 Usercontrols A와 B가 있다고 가정 해 보겠습니다. UserControl A에서 전역 값을 설정하려고합니다. UserControl B의 페이지로드에 도달하면 해당 값에 액세스하여 숨겨진 필드에 넣습니다. 클라이언트 클릭시 javascript 함수를 호출하는 UserControl B 버튼이 있습니다. 그 함수에서 나는 hiddenfields 현재 값을 잡으려고합니다. 그러나 나는 항상 숨겨진 필드 값에서 0을 얻는다. 내가 뭘 잘못하고 있니? 누군가 나를 도울 수 있습니까?자바 스크립트 함수에서 코드 숨김 값 가져 오기
<%@ 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 ") 발(); – ssilas777
당신이 같이 브라우저에서 HTML 소스에 숨겨진 필드의 값을 확인 했나.? codebehind가 값을 설정하지 않았거나 올바르게 읽지 않는 javascript입니까? –
도움을 주신 분들께 감사드립니다. 늦어서 죄송합니다. 어떻게 알지만 다른 코드에서 동일한 코드가 작동합니다. 모든 것이 이제는 잘되었습니다. 여유 시간을 갖게 될 때 이것을 살펴 보겠습니다. 귀하의 의견을 다시 한번 감사드립니다. – nilarya