メディアマネージャーでアイテムを削除するときの確認メッセージ


8

メディアマネージャーのアイテムを削除するときに確認メッセージを表示したいのですが。とりあえず、画像を削除するには、右上の十字ボタンをクリックするだけで画像が消えます。メディアマネージャーのオプションを調べましたが、探しているものなど何も見つかりませんでした。

アイテムを削除する前に確認メッセージまたは確認を求めるポップアップをどのように取得できますか?

あなたの助けをありがとう!


回答を更新して、コードを追加する場所に関する指示を追加しました。メディアファイルがiframeを使用してcomponent.php表示され、ビューを使用してロードされることを忘れていました。
johanpw 2014年

回答:


8

jQueryの数行を管理テンプレートに追加できます(または、管理領域に対してのみ起動するプラグインを使用して追加します)。

jQuery("a.delete-item").on('click', function(e){
    if (confirm("Do you want to delete this image?") != true) {
        e.preventDefault();
    }
});

これにより、削除ボタンのクリックがキャッチXされ、ダイアログボックスが表示されます。

編集:
メディアファイルはIframeを使用して表示され、Iframeは&tmpl=componentパラメーターを使用して読み込まれます。したがって、上記のコードをファイルadministrator\templates\YOURADMINTEMPLATE\component.php<script>タグ内)に追加する必要があります。

それはうまくいくはずです:)


編集ありがとうございます。@ Lodderですが、jQuery APIによる.click()と、のショートカットです.on( "click", handler )。この場合の違いは何ですか(そして「ベストプラクティス」は何ですか)?
johanpw 2014年

2
.on()jQueryのの(正確にどの覚えていない)特定のバージョンのよう結合事象を行うための推奨される方法です。使用するメモリが少なく、動的なアプローチに適しています。もちろん必須ではありませんが、今では間違いなく推奨される方法です。あなたが書いたコードと同じくらい単純なものであれば、問題ありませんが、click()何かが追加される可能性がある場合に備えて、将来の証拠を保持したいのですが+1ところで...)
Lodder

あなたの答えをありがとう@johanpw!コードをadministrator \ templates \ isis \ js \ template.jsに追加しましたが、何も実行されていません。私の管理テンプレートのどのファイルに追加することになっていますか?ありがとう!
JinSnow、2014年

2
Lodderの答えを拡張するために、on()メソッドは委任されたイベントを使用します。委任されたイベントである主な利点は、DOMにまだ追加されていない子要素に追加されます。$(document).on( 'click'、 'a.delete-item'、callbackFunction);を使用する DOMに追加されていない動的に生成されたコンテンツでもクリックイベントが発生することを保証します。AJAXの重いWebサイトに非常に役立ちます。
Brian Bolli

説明ありがとうございます。学ぶべきことは常に新しいものです。
johanpw 2014年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.