Я только начинаю с 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. Я пропустил что-то глупое, или я понял, что это совершенно неправильно?
Извините, но это ничего не изменило. Еще нужно дважды щелкнуть, чтобы отобразить результаты. – Mlethko
Hey Try ScriptManager.RegisterStartupScript –
http://msdn.microsoft.com/en-us/library/system.web.ui.scriptmanager.registerstartupscript.aspx –