1

持っているリストアイテムを編集しようとしていますが、親セクションのテキストを。を使用してフォームフィールドに設定したいと思います.val()。また、ローカルストレージからも削除したいのですが、問題は、これを行う方法がわからず、どこにも見つからないため、オンラインでは人気がないようです。

これは、入力フォームを介してデータを取り込む方法です。

function addTodo(form) {
    var input = $(form).find('input[name="todo"]').first();
    if (input) {    
        var todo = input.val();
        if (Modernizr.localstorage) {
            var todo_list = {};
            if (localStorage.todos) {
                todo_list = JSON.parse(localStorage.todos);
            }   
            var id = +new Date;
            todo_list[id] = {
                name: todo,
                completed: false
            };
            localStorage.todos = JSON.stringify(todo_list); 
            drawTodos();
        }   
        input.val('');
    }
    if ( jQuery.fn.validate ) {
        $(form).validate().resetForm();
    }
}

追加したリストアイテムを選択して、編集できるように入力フィールドに戻すにはどうすればよいですか?

<section>
            <h1>List</h1>
        </section>
        <section id="todo_list">
            <header>
                <form>
                    <input type="text" name="todo" placeholder="What do you need to do?" />
                    <input type="submit" name="add_todo" value="Add To List" />
                </form>
            </header>
        </section>

jquery内のループでいくつかのhtmlを生成しています:

<section class="todo_item" id="item' + id + '"><span id="complete" class="colour complete">Complete</span><span id="incomplete" class="colour incomplete">Incomplete</span><span class="content editable" id="done">' + todo.name + '</span><a href="#" class="remove_todo"><img src="img/delete.png" /></a></section>
4

1 に答える 1

1

editableクラスを持つスパンにハンドラーを付けてみませんか?

このようなもの:

$(document).ready(function () {
    $(".content.editable").click(function () {
        $("input[name='todo']").val($(this).text());
    });
});

ID は一意である必要があります。複数のセクションに同じ ID 'done'、'incomplete'、'complete' を割り当てるとエラーになります。

于 2013-03-02T05:02:41.920 に答える