У меня есть кнопка gridview, которую я программно создал, и я хочу загрузить панель обновления на стороне клиента с отправленными данными. У меня есть скрытое поле значений, которое получает свои данные по щелчку кнопки gridview, и выпадающий список в моей панели обновлений зависит от этого значения.Как я могу перезагрузить панель обновления onclient с помощью javascript?
ответ
при вызове __doPostBack
непосредственно будет работать, это не идеальное решение, так как имя этой функции является, строго говоря, деталью реализации .Net framework.
Лучшим решением является использование ClientScriptManager.GetPostBackEventReference
, что дает вам более устойчивый интерфейс к той же функциональности. Обратите внимание, что GetPostBackEventReference
и GetCallBackEventReference
- это не одно и то же: первый вызывает перезагрузку страницы (частичную или полную, в зависимости от того, как настроены ваши UpdatePanels), в то время как последний не работает.
мы используем метод __doPostBack(), который имитирует постбэк и вызывает UpdatePanel для обновления
__doPostBack('controlName','');
Не забывайте, что имя управления это HTML ID (который также может содержать доллары и т.д.), а не просто это идентификатор ASP.NET.
Насколько я знаю, вы можете вызвать этот метод и передать в поле скрытого значения, или DIV, что он находится.
Я попытался назвать это как этот __doPostBack ('<% = Upd atePanel1.ClientID%>», ''); Как это назвать метод? – Eric
-1: вызов __doPostBack напрямую - плохая практика. –
Я знаю, что не всем нравится _doPostBack, но, пожалуйста, объясните, почему это плохая практика. Это хорошо воспринятая практика и широко используется, и все отрицательные стороны ее использования, такие как потенциал для _doPostBack, устаревают, необоснованны. – tjmoore
Самый простой способ сделать это - вызвать __doPostBack с клиентской стороны.
На стороне клиента метод button1_onclick называет:
__doPostBack('<%=UpdatePanel1.ClientID %>','Refresh:0,1,2'); //refresh update panel
На странице позади добавьте следующий обработчик событий, чтобы захватить пост обратно вызова:
protected void UpdatePanel1_Load(object sender, EventArgs e)
{
string arg = Request.Form["__EVENTARGUMENT"];
if (string.IsNullOrEmpty(arg)) return;
if (arg.StartWith("Refresh")
{
//parse data first then do your thing here...
}
}
И, конечно же, не забывайте проволоки событие с указанным выше способом:
protected void Page_Init(object sender, EventArgs e)
{
UpdatePanel1.Load += new EventHandler(UpdatePanel1_Load);
}
- 1. Как вызвать панель обновления с помощью JavaScript
- 2. Как я могу перезагрузить расширение chrome с помощью javascript?
- 3. Как я могу перезагрузить iframe внутри iframe с помощью JavaScript?
- 4. Могу ли я перезагрузить приложение без обновления?
- 5. Как я могу закрыть панель поверхностей с помощью javascript-метода?
- 6. Как я могу перезагрузить Fancybox?
- 7. Как я могу перезагрузить php-файл с помощью Ajax?
- 8. Как я могу перезагрузить UITabBarController?
- 9. Как я могу перезагрузить Javascript-файл на веб-странице?
- 10. Как перезагрузить страницу с помощью JavaScript?
- 11. Как перезагрузить изображение с помощью javascript
- 12. Как я могу перезагрузить UIViewController?
- 13. В Camel, как я могу перезагрузить свойства с помощью Spring?
- 14. Как я могу перезагрузить TTLaucherView с помощью новых элементов?
- 15. Как я могу перезагрузить модуль с помощью browserify
- 16. Как я могу перезагрузить определенный тег html с помощью jquery?
- 17. Как перезагрузить ReCaptcha с помощью JavaScript?
- 18. Как перезагрузить div с помощью JavaScript?
- 19. Как я могу перезагрузить обновления сообщений в messages.properties с помощью плагина Grails Localization?
- 20. Как перезагрузить предыдущую страницу с помощью javascript?
- 21. Как я могу перезагрузить (или) обновить uiview?
- 22. Как я могу перезагрузить Javascript Geolocation каждую минуту?
- 23. Как перезагрузить коллекцию предметов из webservice с помощью javascript
- 24. Как я могу перезагрузить div с помощью PartialView в ASP.NET MVC с помощью jQuery?
- 25. Javascript Как я могу перезагрузить только один раз?
- 26. Как я могу решить, какой триггер активировал мою панель обновления?
- 27. Панель обновления вызывает ошибку JavaScript
- 28. Как перезагрузить номер без обновления
- 29. ASP.Net: панель асинхронного обновления Загрузка с помощью двух панелей обновления
- 30. Как перезагрузить изображение с помощью обновления src из запроса $ http?
Я не уверен, что понимаю, как это использовать. Это была моя попытка: btnedit.OnClientClick = ClientScript.GetCallbackEventReference (UpdatePanel1, "", "", "") и String.Format ("openModal ('{0}', '" и GridView1.Rows (i) .Cells (0) .Text & "'); return false; ", hidden.ClientID) Я не уверен, что добавить в качестве параметров. – Eric
Я отредактировал свой ответ, чтобы указать, что вы, вероятно, хотите получить обратную передачу, а не обратный вызов –
Я немного смущен тем, что вы пытаетесь сделать - делает ли пользователь что-то с результатом openModal(), и после того, как они сделали это, вы хотите, чтобы список перепроверялся? –