2015-04-17 2 views
0

Можно ли стрелять datalist_ItemCommand функция на странице загрузка после post задний. Это не имеет смысла, но мне нужно добиться этого.Как запустить datalist_ItemCommand в загрузке страницы после обратной передачи?

Это scenerio: У меня есть datalist элемент управления, и он загружен некоторыми данными человека. У этого есть кнопка удаления в itemTemplate.

<ItemTemplate> 
    <tr> 
     <td><%# Eval("Name") %></td> 
     <td><%# Eval("EMail") %></td> 
     <td align="center"><asp:LinkButton ID="btnDelete" runat="server" CommandName="delete" CommandArgument='<%#Eval("id") %>' OnClientClick="confirmMe('My Program title','Are you sure ?','Yes', 'No', 'datalist1_ItemCommand'); return false;"></asp:LinkButton></td> 
    </tr> 
</ItemTemplate> 

Когда нажата кнопка «Удалить», пользовательский модальный блок показывает и ждет ответа пользователя. Если пользователь нажимает «да» в модальном поле, то функция itemCommand должна быть запущена. Вот почему вы видите datalist_ItemCommand функцию в атрибуте OnClientClick.

Вот JS:

function confirmMe(title, content, button_ok, button_no, asp_control) { 

    swal({ 
     title: title, 
     text: content, 
     type: "warning", 
     showCancelButton: true, 
     confirmButtonColor: "#8dc63f", 
     confirmButtonText: button_ok, 
     cancelButtonText: button_no, 
     closeOnConfirm: false, 
     closeOnCancel: true 
    }, 
    function (result) { 

     if (result === true) 
      __doPostBack(asp_control, ''); 
    }); 
} 
+0

Do вы открываете модальный со стороны JS? проверьте это http://stackoverflow.com/questions/4793955/how-to-add-a-confirm-delete-option-in-asp-net-gridview –

+0

Да Я открываю модальный код JS. Но это сообщение покажет мне браузерный оповещник. Я не хочу использовать его. –

+0

Чем вам нужно что-то подобное? http://www.codeproject.com/Articles/238122/Delete-Functionality-in-GridView-with-Confirmation –

ответ

0

Просто позвоните _doPostBack с соответствующим идентификатором при приеме от модального, Пример here

function deleteItem(uniqueID, itemID) { 
    //Show dialog here 
     //on accept call __doPostBack(uniqueID, ''); than close modal 
     //on cancel close modal 
    return false 
} 

и вызвать этот метод клиента нажмите

OnClientClick="javascript:return deleteItem(this.name, this.alt);" 
Смежные вопросы