문제

ASP에서 JavaScript 확인 상자를 가져 오는 데 어려움을 겪고 있습니다.

이것은 GridView의 원래 코드이지만 ButtonField는 "onClientClick"을 수락하지 않는 것 같습니다.

<asp:GridView ID="gvNavios" runat="server"  onrowcommand="gvNavios_RowCommand">
<Columns>
    <asp:ButtonField runat="server" ButtonType="Button" Text="delete" CommandName="Eliminar" />
</Columns>
</asp:GridView>
.

그래서 ASP : LinkButton 대신 를 시도했습니다.

<asp:TemplateField HeaderText="Delete">
<ItemTemplate>
     <asp:LinkButton ID="eliminar" CommandName="delete" runat="server" Text="delete"/>
</ItemTemplate>
</asp:TemplateField>
.

그러나이 방법은 e. colmmandargument가 채워지지 않으므로 어느 행을 클릭 할 수 없습니다

C # 코드 뒤로 :

 protected void gvNavios_RowCommand(object sender, GridViewCommandEventArgs e)
{

    string currentCommand = e.CommandName;
    int currentRowIndex = Int32.Parse(e.CommandArgument.ToString());
    string imo = gvNavios.Rows[currentRowIndex].Cells[3].Text;

    if (currentCommand.Equals("delete"))
    {
        eliminarNavio(imo);
        Response.Redirect(Request.RawUrl);
    }
.

}

다음 중 하나를 알아보십시오. ASP : 버튼에 JavaScript를 삽입하거나 LinkButton에서 행 번호를 가져 오십시오.

도움이 되었습니까?

해결책

링크 버튼에 CommandArgument를 추가하고 일부 색인을 제공해야합니다 (개체 ID가 최상이 될 것입니다).

<asp:LinkButton ID="eliminar" CommandArgument='<%# Eval("ID") %>' CommandName="delete" runat="server" Text="delete"/>
.

다른 팁

voreque 아니 당신 UN Templatefield?, Creo Es Mas Facil

왜 interveField를 사용하지 않습니까? ¿

rowDATabound 내부 :

먼저 TemplateField를 만들고 TemplateField 내에서 ImageButton을 삽입하려면 img_borrar (commandName)을 호출하십시오.

rowcommand에서 찾기, 인덱스 (commandArgument)를 설정하고, 일부 스타일을 설정하고, Java comfirmation :

If e.Row.RowType = DataControlRowType.DataRow Then
                Dim boton_borrar As ImageButton = CType(e.Row.Cells(1).FindControl("img_borrar"), ImageButton)
                boton_borrar .CommandArgument = e.Row.RowIndex.ToString
                boton_borrar .Style("cursor") = "hand"
                boton_borrar .Attributes.Add("onClick", "return window.confirm(' ¿Desea borrar este registro? ');")


            End If
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top