ホーム>source

これは以前に尋ねられましたが、解決策を見て問題を理解することができません。

だから私はこのような行を追加するHTMLとjqueryコードを持っています:-

ウィズウィズ
ウィズウィズ

今問題は行が適切に追加されていますが、それらを削除することができません。クリックイベントでも、Remove関数を呼び出していません。

$(document).ready(function () { window.VendorDetail = '@Url.Action("GetQuoteVendorDetail", "Technical")'; window.SaveItemDetails = '@Url.Action("SaveItemDetails", "Technical")'; $('#divQuoteDetails').hide(); //1. Add new row $("#addNew").click(function (e) { e.preventDefault(); var $tableBody = $("#lotTable"); var $trLast = $tableBody.find("tr:last"); var $trNew = $trLast.clone(); var suffix = $trNew.find(':input:first').attr('name').match(/\d+/); $trNew.find("td:last").html('<a href="#" class="remove">Remove</a>'); $.each($trNew.find(':input'), function (i, val) { // Replaced Name var oldN = $(this).attr('name'); var newN = oldN.replace('[' + suffix + ']', '[' + (parseInt(suffix) + 1) + ']'); $(this).attr('name', newN); //Replaced value var type = $(this).attr('type'); if (type.toLowerCase() == "text") { $(this).attr('value', ''); } // If you have another Type then replace with default value $(this).removeClass("input-validation-error"); }); $trLast.after($trNew); // Re-assign Validation //var form = $("form") // .removeData("validator") // .removeData("unobtrusiveValidation"); //$.validator.unobtrusive.parse(form); }); // 2. Remove $('.remove').on("click", "a", function (e) { debugger; e.preventDefault(); $(this).parent().parent().remove(); }); });
あなたの答え
  • 解決した方法 # 1

    イベント remove を移動する必要があります   $("#addNew").click の中へのonclick  以下のように。

    <前>ウィズウィズ

    ウィズウィズ
    
    ウィズウィズ
    

  • 解決した方法 # 2

    これを試して、

    <前>ウィズウィズ // 2. Remove $('.remove').on("click", function (e) { console.log("Removed"); $(this).parent().parent().remove(); });

関連記事

  • 前へ java - JPAクエリ:サブクエリをグループ化条件に結合する
  • 次へ react native - モジュールの解析に失敗しました:予期しないトークン(11 - 19)