2016-09-08 10 views
0

私は、削除ボタンを持つaspデータグリッドを持っています。ボタンをクリックし、確認メッセージのためのモーダルを有効にし、モーダルで大丈夫がクリックされたときに、モーダルがなければ呼び出されたでしょう。私はこれをjQueryを使って実現しようとしています。jQueryを使用してGridviewボタンをクリック

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 
    }); 

問題は、$( "#" +ボタン).click()はさえもかかわらず、何もしないということですグリッドビューのボタンIDを持っています。 $( ".btnRemove")をクリックして、コードビハインドが呼び出されたはずです。

+1

" 。代わりに '#'。 '。'はクラスのために使用され、 '#'はIDのためのものです – Clarice

+0

私は '#'を使用している理由は、グリッドビューのボタンのIDを格納します。クリックすると、$( ".btnRemove")をトリガーするbtnRemoveクラスも同じになります。 – fussy

+0

ClientIdModeプロパティは "AutoID"に設定されています。つまり、実際にレンダリングされたコントロールのIDは異なります。 Msdnから、 "AutoID"の場合、各親命名コンテナのID値をコントロールのID値と連結してClientID値を生成します。 –

答えて

0

これを試してみてください:

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

これを試してください。私は同じことをaspボタンを使って行っています。その作業とコードビハインドイベントが呼び出されます。同じid = btnDeleteのモーダルウィンドウを使用しました。

鉱山

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

ユアーズ

<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; 
    }); 
関連する問題