0
     <div class="sortable-sections">
            <fieldset class="section draggable" id="flSectionType">
                <div class="btn-drag section-handle hidden-view">
                </div>
                <div class="section-header">
                    <span class="section-label">Job Requirements</span> <a class="section-info" href="#more-info"
                        title="Minimum Education, Minimum Work Experience, Required Licenses/Certifications, Required Skills, Knowledge, and Abilities needed to perform the job.">
                        ?</a>
                </div>
                <div class="sortable-items">
                </div>
                <a class="section-add-item hidden-view" id="addJR" href="#add-item" data-item='{"id":"addJR","template":"requirement","item_type":"Job Requirement"}'>
                    Add a new Job Requirement</a>
            </fieldset>
       <fieldset class="section draggable">
       </fieldset>
       <fieldset class="section draggable">
       </fieldset>
     <div>

上記のコードは、sortable-sectonsでドラッグできるセクションのリストを生成します。

次のスクリプトを使用してセクションを手動で削除し、sortable-sectionsに追加し直していますが、jqueryイベントが登録されていません。

 var $section = $('.sortable-sections').find($('#flSectionType');
 $('.sortable-sections').find($('#flSectionType').remove();
 ......
 .......
 $('.sortable-sections').append($section.val());

セクションを追加した後、section-add-itemcssクラスに登録されているイベントはトリガーされません。注:「on」の代わりに「live」メソッドを使用しました。ただし、すべての属性を保持しているわけではありません。

編集:イベントコード:

   $('.section-add-item').on('click', function (e) {
        that.addSection(this);
        e.preventDefault();
    });

ドラッグアンドドロップの代わりに、手動で初期ロード時にセクションを注文しています。

4

1 に答える 1

2

.section-add-itemイベントを追加するときにすでに存在している必要があり、の使用法onが間違っている

$('body').on('click', '.section-add-item', function (e) {

});

本体の代わりに、作成.section-add-item前にすでに存在していた別の親を追加できます.section-add-item

于 2012-09-04T12:17:44.343 に答える