-2

このjsコードで動作する別のdivがありますが、どういうわけかこれでは動作しません。なぜそれがうまくいかないのか誰か教えてもらえますか?

$(function () {
    var $scntDiv = $('#parts');
    var i = $('#parts input').size()-1;

    $('#addField').on('click', function () {
        var part = '<div id="parts' + i + '"><span>Part</span> <input type="text" id="auto_part' + i + '" name="auto_part' + i + '" /><br/>' +
            '<span>Description</span> <textarea type="text" id="auto_description' + i + '" name="auto_description' + i + '"></textarea> <br />' +
            '<a href="#" class="removefield">Remove</a></div>';
        $scntDiv.after(part);
        $("#row_count").val(i);
        i++;
        return false;
    });

    $(document).on("click", ".removefield", function () {
        if (i > 2) {
            $("#row_count").val(i-2);
            $(this).parent('div').remove();
            i--;
        }
        return false;
    });
});

$(function () {
    var $scntDiv = $('.brands');
    var i = $('.brands select').size()-1;

    $('#addBrand').on('click', function () {
        var brand = "<div class='brands'><span>Brands</span><br />"+
            '<select>'+
                '<option>Audi</option>'+
                '<option>BMW</option>'+
                '<option>Mercedes</option>'+
            '</select>'+
        '</div>';
        $scntDiv.after(brand);
        $("#countBrand").val(i);
        i++;
        return false;
    });

    $(document).on("click", ".removeBrand", function () {
        if (i > 2) {
            $("#countBrand").val(i-2);
            $(this).parent('div').remove();
            i--;
        }
        return false;
    });
});

最初の機能は機能しますが、最後の機能は機能しません。

ライブデモ: http://jsfiddle.net/rEUPx/

4

1 に答える 1

-1

2 つのこととして、jQuery をページに追加し、js 文字列の内側の二重引用符を単一引用符に置き換え、外側の引用符を二重にする必要があります。

http://jsfiddle.net/rEUPx/4/

var a = '<a href="#">CLICK</a>'; // will result in an error

var a = "<a href='#'>CLICK</a>"; // is correct

于 2013-02-10T22:59:12.753 に答える