2016-09-08 24 views
0

Ich habe ein Asp-Datagrid mit einer Schaltfläche zum Entfernen, und ich möchte auf die Schaltfläche klicken, aktivieren Sie die Modalität für die Bestätigungsmeldung und wenn OK im Modal angeklickt wird, den normalen C# -Code dahinter zu nennen wäre aufgerufen worden, wenn das Modal nicht da wäre. Ich versuche das mit jQuery zu erreichen. Unten ist der Code:Klicken Sie auf Gridview Schaltfläche mit jQuery

Gridview:

<asp:linkbutton id="btnRemoveProperty" runat="server" class="btnRemove" ClientIDMode ="AutoID" CommandName="RemoveProperty"> REMOVE <asp:linkbutton> 

jQuery:

var btnConfirm; 
var button; 
$(".btnRemove").click(function() { 
    if (btnConfirm == 1) { 
    btnConfirm = ""; 
    return true; 
    } 
    else { 
    button = $(this).attr('id'); 
    $("modal_delProperty").show(); 
    return false; 
    } 
}); 

$("#btnDelete.click(function() { //button inside the modal 
     btnConfirm = 1; 
     $("#" + button).click(); //is not doing anything 
    }); 

Das Problem ist, dass nicht alles, obwohl es $ ("#" + Taste) .click() zu tun hat die Gridview-Schaltfläche ID. Es hätte den $ (". BtnRemove") aufgerufen. Klick und dann wäre der Code dahinter aufgerufen worden.

+1

' . " stattdessen '#'. "." wird für die Klasse verwendet und "#" ist für IDs – Clarice

+0

Ich speichere die ID der Schaltfläche in der Gridview, weshalb ich '#' verwende. Die Schaltfläche sollte auch die gleiche btnRemove-Klasse haben, die das $ (". BtnRemove") auslösen soll. Click-Funktion – fussy

+0

ClientIdMode-Eigenschaft ist auf "AutoID" festgelegt, was bedeutet, dass die tatsächliche gerenderte ID des Steuerelements unterschiedlich sein wird. Von Msdn, wenn es "AutoID" ist, wird der ClientID-Wert generiert, indem die ID-Werte jedes übergeordneten Namenscontainers mit dem ID-Wert des Steuerelements verknüpft werden. –

Antwort

0

Try this:

$("#btnDelete").click(function() { //button inside the modal 
    btnConfirm = 1; 
    var el = $("#" + button); 
    $(el)[0].click(); 
    return false; 
    }); 
0

Versuchen Sie dies.Ich habe die gleiche Sache mit Asp-Taste, seine Arbeit und Code hinter Ereignis wird aufgerufen. Ich habe das modale Fenster mit der gleichen ID = btnDelete verwendet.

Minen

<asp:Button ID="btnBeforeCnfrm" class="btnBeforeCnfrmCl" OnClientClick="return true;" ClientIDMode ="AutoID" runat="server" Text="Button" OnClick="btnBeforeCnfrm_Click1" /> 

Yours

<asp:linkbutton id="btnRemoveProperty" runat="server" class="btnRemove" ClientIDMode ="AutoID" OnClientClick="return true;" CommandName="RemoveProperty"> REMOVE <asp:linkbutton> 

JQuery

$("#btnDelete").click(function() { //button inside the modal 
     btnConfirm = 1; 
     var el = $("#" + button); 
     $(el).click(); 
     return false; 
    }); 
Verwandte Themen