Поднимите событие обратного сообщения при нажатии тега div так же, как нажатие кнопки Asp

Я хочу вызвать событие обратной связи при нажатии тега div, которое мы делаем с кнопкой Asp.

в настоящее время я пытаюсь так.

 protected void Page_Load(object Sender, EventArgs E)
 { 
  MyDiv.Attributes["onclick"] = 
              ClientScript.GetPostBackEventReference(this, "MyDiv_Click");
}

public void RaisePostBackEvent(string eventArgument)
{
      if (!string.IsNullOrEmpty(eventArgument))
            {
                if (eventArgument == "MyDiv_Click")
                {
                    MyDiv_Click();
                }
            }
        }

protected void MyDiv_Click()
{
// My Implementation
}

как это сделать?


person Srinivas    schedule 08.11.2014    source источник
comment
Извините, но это не лучший способ задать вопрос здесь. Пробовали ли вы что-нибудь решить свою проблему? Сначала покажите свои усилия, чтобы люди могли показать свои. Пожалуйста, прочтите Часто задаваемые вопросы, Как спросить и справочный центр.   -  person Soner Gönül    schedule 08.11.2014
comment
я пытался с RaisePostBackEvent, но это не запускает событие   -  person Srinivas    schedule 08.11.2014
comment
@Srinivas посмотрите эту ссылку, пожалуйста: stackoverflow.com /вопросы/9294626/   -  person Nima Derakhshanjan    schedule 08.11.2014
comment
@NiMa Проверил эту ссылку, но по моему требованию я не хочу использовать другой элемент управления.   -  person Srinivas    schedule 09.11.2014


Ответы (1)


Вам нужно зарегистрировать GetPostBackEventReference в Page_PreRender и в Page_Load, проверить наличие Request["__EVENTARGUMENT"], если это MyDiv_Click и страница отправлена ​​обратно, затем вызвать MyDiv_Click.

Полный код

protected void Page_PreRender(object sender,EventArgs e)
{
    MyDiv.Attributes["onclick"] =
        ClientScript.GetPostBackEventReference(this, "MyDiv_Click");
}

protected void Page_Load(object sender, EventArgs e)
{
    if (IsPostBack && Request["__EVENTARGUMENT"] != null && Request["__EVENTARGUMENT"] == "MyDiv_Click")
    {
        MyDiv_Click();
    }
}

Снимок экрана -

введите здесь описание изображения

person Arindam Nayak    schedule 08.11.2014