2016-04-27 7 views
0

PHPを使用してリストされたデータベースエントリを削除する必要があります。テーブルのデータをforeachループで表示し、代わりにBootstrapポップオーバー確認を表示する削除ボタンをPHPスクリプトでアクションを送信します。変数delete = 'ID'をURLに追加します.jQueryスクリプトによって処理される確認のボタンは、URL www.domain.xx/page = xx & delete = IDを呼び出します。jQuery Bootstrap Popover上でURLアクションを作成するPHP動的IDに関連するボタン

すべてのブートストラップポップオーバーアイテムには、delete_1、delete_2、delete_3などのPHPによって生成されたIDがあります。この変数をdinamically jQueryに渡す必要があります。

print '<button type="button" id="delete_'. $prodotto[0] . '" data-toggle="confirmation" data-singleton="true" data-original-title="Eliminare ?" data-btn-ok-label="SI" data-btn-cancel-label="NO" class="btn red btn-outline btn-sm"><i class="fa fa-times"> </i></button>'; 

だから$prodotto[0]リターンプロダクトIDの例:delete_1

が続いてjQueryの機能が要求を処理すると、URLのリダイレクトを行う

は、私はPHPでポップオーバーを処理するために、このコードを使用していますアクションとして:

$("#delete_n").on("confirmed.bs.confirmation", function() { 
     window.location.href = window.location.href, '?delete=' . n; 
    }) 

私は#delete_nnを交換し、無限の数のpossibilを処理する必要がありますこの番号は、location.href関数で使用する必要があります。

どのように私は無限ループを生成せずに、JSON呼び出しを使用せずにこれを行うことができますか?

ありがとうございます!

答えて

2

私はあなたが間違ったやり方をしようとしていると思います。私は、次のことを提案してもよい:

  1. 代わりのようなdelete-linkのようなクラスを使用し、IDとデータ属性を追加#delete_idを使用して:

    <button class="delete-link other classes here" data-id="'. $prodotto[0] . '"></button>

  2. 使用jQueryのクラスをキャッチするために、 IDではなく、それぞれのボタンのために発射されます:

    $('.delete-link').on(...); 
    
  3. コンストラクト以下のようなボタン上のデータ属性を使用して、削除リンクをT:これはあなたがクリックするボタンにスコープされなければならないイベント機能で

    window.location.href = '/some-link?delete=' + $(this).data('id'); 
    

を。

+0

お返事のおかげで、私はsurelly働くあなたの方法を使用しようと、より簡単ですが、そこのURLへのリダイレクトはありません。ここで は完全なjQueryの機能である理由私は理解できないよ。 { window.location.href = '?page = {?} {UIConfirmations = function(){ var N = function(){ $( "delete_prod_link")。on( "confirmed.bs.confirmation"、function(){ window.location.href ='?page = prodotti-lista&delete = '+ $(これ)。データ( 'id'); }) }; リターン{INIT:関数(){ N() }} }(); ' – andreaem

+0

と私はに係るボタンのHTMLを変更した:= "ボタン" ' <ボタン型DATA- Data-toggle = "確認" data-singleton = "true" data-original-title = "Eliminare?" 「データの削除」ボタンをクリックすると、データが削除されたかどうかが確認されます。data-btn-ok-label = "SI" data-btn-cancel-label = "NO" class = "delete_prod_link btn red btn-outline btn-sm"> ' 私が使っているクラスは '.delete_prod_link'です。 – andreaem

+0

@andreaemブレークポイントまたはアラートでスクリプトをデバッグして、関数が呼び出されていることを確認することができます –

関連する問題