У меня есть кнопка, которая выполняет 2 действия с использованием ItemCommand в зависимости от одного sql запроса.
Если запрос верен, вызывается модальное окно.
Если запрос ложный, код выполняется, чтобы показать панель и et c, (я думаю, что делает обратную передачу). Но:
<table class="table table-striped table-bordered table-hover" id="dataTables-Table">
<thead>
<tr>
<th>Id_WorkOrder</th>
<th>Revisar Orden</th>
</tr>
</thead>
<tbody>
<asp:Repeater ID="rpt" EnableViewState="false" OnItemCommand="rpt_ItemCommand" runat="server" >
<ItemTemplate>
<tr>
<td>
<asp:Label ID="lblId_WorkOrder" runat="server" Text='<%# Eval("Id_WorkOrder") %>' />
</td>
<!-- This part of the code -->
<td>
<asp:UpdatePanel ID="updatePanel1" runat="server" ChildrenAsTriggers="false" UpdateMode="Conditional" >
<ContentTemplate>
<asp:Button ID="btnButton" runat="server" Text="Button" CommandName="action"> </asp:Button>
</ContentTemplate>
</asp:UpdatePanel>
</td>
<!-- This part of the code -->
</tr>
</ItemTemplate>
</asp:Repeater>
</tbody>
</table>
Если я помещу UpdatePanel и ContentTemplate внутри <td>
, мой модальный код будет работать, а другой код - нет. Если они находятся за пределами модального <td>
, не работает, а код работает, выполняется обратная передача.
protected void rpt_ItemCommand(object source, RepeaterCommandEventArgs e)
{
if (e.CommandName == "action")
{
if (sqlquery == true)
{
//Execute this modal, This work with the updatepanel and contenttemplate inside,
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "none", "<script>$('#modalInicioRep').modal('show');</script>", false);
}
else
{
//Do postback and show another Panel.
pnlTable.Visible = false;
pnlFormulary.Visible = true;
}
}
}
Что я могу сделать для выполнения обоих ??