Доступ к текущим значениям элементов управления на странице с использованием PageMethods в JavaScript

#javascript #asp.net

#javascript #asp.net

Вопрос:

У меня возникают проблемы с доступом к моим элементам управления (ASPxTextBox, AspxComboBox, AspxSpinEdit, AspxDateEdit) на странице с помощью метода codeBehind. Я вижу, что мой метод codebehind получает доступ из javascript. Это то, что я делал до сих пор —

На моей странице .aspx

 PageMethods.PG_MethodsCreateTrvHotels('AutoBooking');
  

И в моем CodeBehind

 [WebMethod(true)]
public static void PG_MethodsCreateTrvHotels(string reservationType)
{

   AutoRBooking AutoBok = (AutoRBooking )Activator.CreateInstance(typeof(AutoRBooking));
        AutoBok.CreateTrvHotels(reservationType);

}


private void CreateTrvHotels(string reservationType)
{

    ///////// Some Logic Code//////////////////

       ** Get .aspx control Values here for further processing**

       /////////////Some Logic code Based on AspxTextBox, AspxComboBox, AspxSpinEdit, AspxDateEdit values////////////////////
 }
  

Я использовал страницу.FindControl() но каждый раз выдает значение null.

Любой пример кода будет очень полезен.

Спасибо и с уважением, Насер Джавед

Комментарии:

1. Вы не можете________

2. тогда какой может быть наилучший способ справиться с моей ситуацией — я пробовал использовать AspxCallBacks. Проблема в том, что тогда мои обратные вызовы становятся вложенными — Из активированного aspxCallBack я попытался вызвать функцию JavaScript, которая снова активирует 2-й обратный вызов (AspxCallback2.PerformCallback()) — Этот 2-й обратный вызов никогда не возникает — В коде позади, когда выполняется первый обратный вызов, у меня есть это -ScriptManager. RegisterStartupScript (это. Страница, this.Страница. GetType(), «ConfirmCode», «ActivateConfirmCode2Callbacks();», true); Похоже, это никогда не запускает второй обратный вызов. Каким тогда может быть альтернативное решение?

3. используйте jquery.ajax

4. не могли бы вы, пожалуйста, вкратце рассказать мне, какому процессу я должен следовать, чтобы выполнить мое требование — PageMethods изначально был необязательным, но я чувствовал, что это решение, потому что я могу просто вызвать -ScriptManager. RegisterStartupScript (это. Страница, this.Страница. GetType(), «ConfirmCode», «ActivateConfirmCode2Callbacks();», true); внутри кода, лежащего в основе метода. Но когда я запускаю свой первый обратный вызов и применяю скрипт для моей активации 2ndCallBack. Второй не выполняется. Я думаю, что я не могу зарегистрировать ScriptManager. Зарегистрируйте startupscript, потому что уже запущен aspx callbaclk.