1
코드에서 숨겨진 값에 액세스하려고하지만 대신 비어있는 값이 있습니다. 여기서 내가하는 일은 Javascript 함수에서 2 개의 hiddenfield 값을 설정하는 것입니다. 그리고 나서 asp : button 클릭을 통한 포스트 백을 수행한다. 내가 뭘 잘못하고 있는지 잘 모르겠다. 친절히 도와주세요.asp.net + CodeBehind에서 포스트 백에서 JS에 할당 된 HiddenField 값에 액세스
감사합니다.
<form id="Form1" class="form" runat="server">
<p class="SearchAddress">
<asp:TextBox ID="searchTextField" runat="server" />
<label for="searchTextField">
Location</label>
</p>
<p class="Date">
<asp:TextBox ID="txtDate" runat="server">18/10/2012</asp:TextBox>
<label for="txtDate">
Date</label>
</p>
<p class="TimeFrom">
<asp:TextBox ID="TimeFrom" runat="server">18:00</asp:TextBox>
<label for="txtTimeFrom">
Time From</label>
</p>
<p class="TimeTo">
<asp:TextBox ID="TimeTo" runat="server">19:00</asp:TextBox>
<label for="txtTimeTo">
Time To</label>
</p>
<p class="submit">
<asp:Button ID="btnCalculateCoordinates" runat="server" Text="Post It!"
onClientclick="calculateCoordinates();" onclick="btnCalculateCoordinates_Click"
/>
</p>
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:UpdatePanel ID="uppnlLatLong" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:HiddenField ID="txtLatitude" runat="server" />
<asp:HiddenField ID="txtLongitude" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
</form>
function calculateCoordinates() {
var txtAddress1 = document.getElementById('<%=searchTextField.ClientID%>');
var txtLat = document.getElementById('<%=txtLatitude.ClientID%>');
var txtLng = document.getElementById('<%=txtLongitude.ClientID%>');
var address = txtAddress1.value + ', ';
var geocoder;
geocoder = new google.maps.Geocoder();
geocoder.geocode({ address: address }, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
var location = results[0].geometry.location;
txtLat.value = location.lat(); //SETTING THE HIDDENFIELD VALUE
txtLng.value = location.lng(); //SETTING THE HIDDENFIELD VALUE
}
else
alert('Opps, sorry but we are unable to locate' + $(txtAddress1).val());
});
}
</script>
ScriptManager 및 UpdatePanel은 양식 안에 있어야합니다. – k80sg
예, 답변을 업데이트했습니다. – Adil
이것은 작동하지 않습니다. 포스트 백이 내 서버 메소드를 먼저 실행하므로 내 HiddenField 값을 가져올 수 없습니다. 내가 한 일은 성공적으로 값을 설정 한 후 자바 스크립트에서 버튼 클릭을 호출하는 것입니다. – k80sg