0

jQuery の attr() 関数が DOM ツリーをバブリングする (またはダウンする) のを止める方法はありますか? stopPropagation() 関数を試しましたが、attr() では機能しないようです。私のコードには、attr() で呼び出される関数があり、その関数には、関数を呼び出す他の 2 つの attr() メソッドがあります。本質的に、ネストされた foreach ループの jQuery バージョンがあります (ただし、それぞれを試しました()しかし、それはうまくいきませんでした)。泡立ちを止める別の方法はありますか?

私のjQueryコード:

$(document).ready(function() {

    $("#assessform_page").on("submit", "#assessform", function(e) {
        e.preventDefault();
        assessrows = {};
        url = $(this).attr("action");

        $("div").attr("data-test-num", function(k) {
                    k.stopPropagation();
            assessrows[k + 1] = {};
            $("input, select").attr("data-tab-row", function(v) {
                            v.stopPropagation();
                assessrows[k + 1][$(this).attr("data-tab-row")] = $(this).val();
            });
            $("label").attr("data-tab-row", function(v) {
                            v.stopPropagation();
                assessrows[k + 1][$(this).attr("data-tab-row")] = $(this).text();
            });
        });
        console.log(assessrows);

    });

});

私のHTMLコード:

<form id="assessform" action="review.php" method="post" enctype="application/x-www-form-urlencoded" name="assessform">
    <div data-test-num="1">
        <label data-tab-row="objname">First Value: </label>
        <select autofocus="autofocus" data-tab-row="status">
            // options
        </select>
        <input type="text" data-tab-row="numer" value="" />
        <br />
        <br />
    </div>
    <div data-test-num="2">
        <label data-tab-row="objname">Second Value: </label>
        <select data-tab-row="status">
            // options
        </select>
        <select data-tab-row="numer">
            // options
        </select>
        <input type="hidden" data-tab-row="denom" value="1" />
        <br />
        <br />
    </div>
    <button type="submit" name="submit-button" id="submit-button">Submit</button>
</form>
4

0 に答える 0