2015-06-25 2 views
0

У меня очень чувствительная неурегулированная ошибка. Pls посмотреть на этот forums,Linkbutton click открывает modalpopup, кнопка «Назад» приводит к «Истекшему документу»

на жереха: LinkButton нажмите будет открыт modalPop, при этом, если кнопка назад нажата, браузеры говорит «Документ истек»

LinkButton добавляется динамически внутри GridView и команды Кроме того, при щелчке динамически добавленного linkbutton функция lnkBtnBookTheSelected_Click будет называться там, я собираю выбранный идентификатор строки.

bool CheckAvailability() 
{ 
    //some logical code and getting data in "statusList" 
    Session["Availability"] = statusList; 
    gridViewAvailability_DataBound(null,null); 
} 

protected void gridViewAvailability_DataBound(object sender, EventArgs e) 
{ 
    string[] statusList = (string[])Session["Availability"]; 
    try 
    { 

     if (statusList.Length > 0) 
     { 
      int i = 1; 
      foreach (GridViewRow row in gridViewAvailability.Rows) 
      { 
       row.Cells[3].Controls.Clear(); 
       if (statusList[i - 1] == "Available") 
       { 
         LinkButton lb = new LinkButton(); 
         lb.Text = "Book this?"; 
         lb.CommandArgument =i.ToString();    
lb.Command+=lnkBtnBookTheSelected_Click;                
         row.Cells[3].Controls.Add(lb); 

      } 
      else 
      { 
        Label lbl = new Label(); 
        lbl.Text ="Not available"; 
        row.Cells[3].Controls.Add(lbl); 
      } 

     } 
     i++; 
    } 

} 
catch (Exception a) 
{ 

} 
} 

protected void lnkBtnBookTheSelected_Click(object sender, CommandEventArgs e) 
{  
    Session["SelectedID"] = e.CommandArgument.ToString();  
    lblUserMsgForPurpose.Text = "Dear " + Session["UserName"].ToString() + ", Please enter for what purpose you want to Booking"; 
    ModalPopupExtenderPurpose.Show();//popup for some input     
} 
+0

Использование LinkButton для openPopup на стороне клиента - неплохая идея. для вашего желания, вы можете отправить ajaxRequest на сервер, чтобы сохранить переменные в сеансе. и открыть всплывающее окно, как только запрос завершен. –

ответ

0

«Документ Expired» сообщение от браузера, скорее всего, вызвана ответного удара после того, как проводка вида (обратной передачи по щелчку).

Я предлагаю вызывать шоу на ModalPopupExtender с помощью Javascript, вместо того, чтобы делать полную обратную передачу.

<script type='text/javascript'> 
    function showPopup() { 
     $find('ModalPopupExtenderPurpose').show(); 
    } 
</script> 

Затем в теге LinkButton добавьте onlick = 'showPopup(); return 0;'

<asp:LinkButton runat='server' id='lnkBtnBookTheSelected' Text='Show Popup' onclick='showPopup();return 0;' /> 

Вы можете манипулировать любым другим HTML-кодом, который вам нужен, когда он открывается в той же функции javascript.

+0

Подробнее о запросе. Предоставленный код работает с нормально добавленной ссылкой. Здесь LinkButton динамически добавляется в Gridview и нажимает идентификатор, как «protected void lnkBtnBookTheSelected_Click (отправитель объекта, CommandEventArgs e) " Как показано в обновленном вопросе. Как это сделать в JavaScript, Это единственная ошибка, из-за которой развертывание остановлено. –

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

  • Нет связанных вопросов^_^