私はJQueryにあまり慣れていないので、しばらくお待ちください。
基本的に、いくつかの JQuery スクリプトを実行するビューに 2 つのハイパーリンクがあります。
<a href='#' class="deleteCustomer">Delete</a></td>
.
.
<a href="#" class="undoCustomer">Undo</a>
したがって、これらの各リンクは、同じ .js ファイルの異なる部分にアクセスします。私の「削除」は、データベースでソフト削除を行う処理を行います。DOM が読み込まれ、これは正常に機能します。私はfirebugを使用しています.jsにconsole.logを挿入すると、削除したい顧客のIDが表示され、残りは簡単です。
$(container).find('a.deleteCustomer:first').click(function(e) {
console.log("CustomerId " + $(container).find('input[name=Customer_CustomerId]:first').val());
ただし、私の「元に戻す」は別の行で同じ .js にアクセスし、.js の「元に戻す」部分の console.log は、ヒットしていないことを示しています。
$(container).find('a.undoCustomer').click(function(e) {
console.log("CustomerId " + $(container).find('input[name=Customer_CustomerId]:first').val());
そのため、DOM の準備ができていないようです (?)。この場合、どうすれば修正できますか? DOM を手動でリロードする必要がありますか? もしそうなら、どのように?
PS 最初に [元に戻す] をクリックしても、何も起こらないようです。つまり、FireBug で console.logs を取得しません。ただし、ブラウザーを更新すると、期待どおりに実行されます。つまり、実行に関する undo jquery が実行されます。