2012-03-24 2 views
0

Я только начинаю с ASP.NET в колледже, и я застрял на этом:нужно нажать кнопку дважды, чтобы получить результаты поиска

<asp:UpdatePanel ID="UpdatePanel1" runat="server">    
     <ContentTemplate> 
<asp:Button ID="searchGmapButton" runat="server" Text="Search" OnClientClick="SetMap();" /> 

при нажатии на эту кнопку, она вызывает JavaScript, что получает значение из текстового поля и использует карты Google api для отображения карты и возврата долготы и широты. Тогда я ставлю те на две скрытые текстовые поля,

$("#MainContent_latBox").val(Marker.getPosition().lat().toString()); 
$("#MainContent_lngBox").val(Marker.getPosition().lng().toString()); 

так что я могу использовать их в aspx.cs код, который отображает самые близкие местоположения с помощью поиска дб. Я использую для этого OnTextChanged = "lngBox_TextChanged" в одном из этих скрытых текстовых полей. Проблема заключается в том, что когда я нажимаю кнопку поискаGmapButton, он отображает местоположение карты, а lngBox_TextChanged работает во втором клике. Я пытался использовать OnClientClick для запуска кода жерех для запуска JavaScript и OnClick,

<asp:Button ID="searchGmapButton" runat="server" Text="Search" OnClientClick="SetMap();" onclick="Button1_Click"/><br /> 

но OnClick код не работает вообще. То же самое происходит с первым примером, когда я перемещаю searchGmapButton вне AJAX UpdatePanel. Я пропустил что-то глупое, или я понял, что это совершенно неправильно?

ответ

0

Написать свой ява скрипт Функция

<asp:UpdatePanel> 
     <ContentTemplate> 
      <script type="text/javascript"> 
// Your Java Scrip Code Here 
      </script> 
     </ContentTemplate> 
    </asp:UpdatePanel> 
+0

Извините, но это ничего не изменило. Еще нужно дважды щелкнуть, чтобы отобразить результаты. – Mlethko

+0

Hey Try ScriptManager.RegisterStartupScript –

+0

http://msdn.microsoft.com/en-us/library/system.web.ui.scriptmanager.registerstartupscript.aspx –

Смежные вопросы