0

カスタムインラインエディタを作成しましたが、問題があります。その後、保存ボタンをクリックすると、再度編集できなくなります。どうすれば修正できますか?そして、あなたはそれを複数にするために私を助けることができますか?つまり、これは1ページに1 divでのみ機能し、1以下で機能します。コードは次のとおりです。

$(function() 
{
    var fut = false;
    $('.jq_edit').live('click', function() {
        if (fut==true){ } else {                                 
        var tartalom = $(this).html();
        $(this).html("<input type='text' value='"+tartalom+"'><input type='button' value='Save' class='save'>");
        fut=true;
        }
    });
        $('.save').live('click', function() {
            var mtartalom=$(this).prev().attr('value');
            $('.jq_edit').html(mtartalom);
            $('.jq_edit').append(" <span id='ok'><img src='accept.png'> Success</span>");
            $('#ok').delay(1500).fadeOut(500);
        });
});

そしてhtml:

<body>
<div class="jq_edit">adsadasd</div>
</body>

お手伝いありがとう!

4

2 に答える 2

1

それを複数にするために、あなたはたくさん変える必要があります、ここに私の解決策:

$(function() {
    $('.jq_edit').live('click', function() {
        // if success message is visible, remove it
        $(this).find('.ok').remove();

        // if already in input mode, return
        if ($(this).hasClass('inputMode')) {
            return true;
        }

        // change to input mode
        var tartalom = $(this).html();
        $(this)
            .empty()
            .append("<input type='text' value='" + tartalom + "'>")
            .append("<input type='button' value='Save' class='save'>")
            .addClass('inputMode');
    });

    $('.save').live('click', function() {
        // create success message
        var jSuccess = $("<span class='ok'> <img src='accept.png' /> Success</span>");

        // deactivate input mode
        $(this).parent()
            .html($(this).prev().val())
            .append(jSuccess)
            .removeClass('inputMode');

        // animate success message
        $(jSuccess).delay(1500).fadeOut(500, function() {
            $(this).remove();
        });

        // prevent jq_edit click handler
        return false;
    });
});

私のjsfiddleも参照してください。

于 2011-09-03T08:38:32.927 に答える
0

チェックを外してください。if(fut==true)正常に機能するはずです...fut変数がtrueに設定されると、インプレース編集は実行されません。そもそもなぜその小切手を持っているのか、私はまだ混乱しています...

于 2011-09-03T08:22:31.443 に答える