Member 11102415 Ответов: 2

Проблема Linkbutton внутри updatepanel, чтобы сделать div кликабельным


я использую linkbutton для того, чтобы сделать весь div кликабельным внутри updatepanel..но когда я нажимаю div целиком, у него есть postback.. так что, пожалуйста, помогите, как избежать postback?

Что я уже пробовал:

&ЛТ;как ASP:UpdatePanel и ИД="UpdatePanel2" помощью updatemode="условный" ChildrenAsTriggers="ложных" атрибут runat="сервер"и GT;
& lt;триггеры> & lt;asp:AsyncPostBackTrigger ControlID= "rptEmployer" />
< contenttemplate>

&ЛТ;АСП:текстовое поле с ID="txtsearch" CssClass="срч" autopostback элемента управления="истинный" атрибут runat="сервер" заполнитель="поиск работодателя" метода ontextchanged="txtsearch_TextChanged"&ГТ;
&ЛТ;АСП:репитер идентификатор="rptEmployer" OnItemCommand="rptEmployer_ItemCommand" атрибут runat="сервер"и GT;
& lt;itemtemplate>
&ЛТ;как ASP:LinkButton элемент ID="lb_emp_list" стиль="текст-отделка: нет;" Имя_команды="редактировать" атрибут runat="сервер"и GT;


<%# Eval ("RowNumber") % & gt;


идентификационный номер налогоплательщика : <%# Eval ("EmployerTaxId") % & gt;

<%# Eval ("имя") % & gt;



&ЛТ;как ASP:HiddenField идентификатор="hdn_EmpTax_Id" значение=в'<%# Ивала("EmployerTaxId") %&ГТ;' атрибут runat="сервер" /&ГТ;
&ЛТ;как ASP:HiddenField идентификатор="hdn_CompanyTax_Id" значение=в'<%# Ивала("CompanyTaxID") %&ГТ;' атрибут runat="сервер" /&ГТ;







2 Ответов

Рейтинг:
2

koklimabc

Удалить имя команды как "Имя_команды="редактирование"" внутри &ЛТ;как ASP:linkbutton префиксом xmlns:АСП="#неизвестный"и GT;,замените его "функция onclick="clientCallPostBack()", поставить ClientIDMode как "статика" на UpdatePanel и,создать JavaScript функцию В же страницы на стороне клиента, как показано ниже,

&ЛТ;как ASP:UpdatePanel и ИД="UpdatePanel2" атрибут runat="сервер" clientidmode="статический"и GT;

<asp:LinkButton ID="lb_emp_list" Style="text-decoration: none;" OnClick="clientCallPostBack(); runat="server">


функция clientCallPostBack(){

__doPostBack('<% UpdatePanel2. ClientID %>');
вернуть;
}


Затем, делая что-то в коде позади, как показано ниже на этапе Пререндера,

if (ScriptManager.GetCurrent (Страница).IsInAsyncPostBack)
{
var Target = запрос.Params. Get ("__EVENTTARGET");
if (! String.IsNullOrEmpty(Цель))
{
переключатель (цель)
{
кейс " UpdatePanel2":
// здесь что-то делают............
перерыв;
}
}
}
Помните, что" __doPostBack " agains to updatepanel будет управлять вызовом Asyncpostback без Postback., конечно, вы можете сделать это в jquery, чтобы документ был готов на стороне клиента для более легкого нажатия кнопки ссылки.


Рейтинг:
12

Member 11102415

Put ClientIdMode= " Auto"

<asp:LinkButton ClientIdMode="Auto" ID="lb_emp_list" Style="text-decoration: none;" OnClick="clientCallPostBack(); runat="server">