简体   繁体   English

我对编辑功能有一个特别的想法

[英]I have a Special Idea about an Edit function

All the Functions below are under a $(document).ready(function()) ! 以下所有函数都在$(document).ready(function())下!

First I have an input which you can fade in/out its looks like this: 首先,我有一个输入,你可以淡入/淡出它的样子:

<form>
        <label for="vorname"> Vorname: </label> <input type="text" id="vorname"/></br>
        <label for="nachname"> Nachname: </label> <input type="text"  id="nachname"/></br>
        <label for="alter">Alter:</label> <input type="number" Id="alter"/></br>

        <label for="gender">Geschlecht:</label>
            <select id="geschlecht">
                <option id="Male">männlich</option>
                <option id="Female">weiblich</option>
            </select>
        <input type="button" value="Zurückklappen" id="back"> //fadeOut
        <input type="button" value="Absenden" class="send"/> //eventhandler
    </form>

Then I have a click handler to make list entries 然后我有一个点击处理程序来制作列表条目

$('.send').click(function onClick(){ 

    var age = $('#alter').val();
    var preName = $('#vorname').val();
    var secName = $('#nachname').val();         
    var gender = $('#geschlecht').val();

    list.push ({
        alter: age,
        vorname: preName,
        nachname: secName,
        geschlecht: gender,
    });

    generateList();
    stat();
    save();
});

But I want an Edit function who takes the selected list entry, 但我想要一个获取所选列表条目的编辑功能,

$("#liste").click(function selectList (event) {
        var target = $( event.target );
        if ( target.is( "li" ) ) {
            target.toggleClass('selected');
        }
    });

To take exactly this ONE (because i cant edit two at once, or can I? Would also be cool) selected Entry to edit it. 准确地说这一个(因为我不能一次编辑两个,或者我可以吗?也会很酷)选择Entry来编辑它。

THIS is where i need help (the things before are only explanation, finished work there). 这是我需要帮助的地方(以前的事情只是解释,在那里完成工作)。

        $(".edit").click(function (){

                var index = $('.selected')
    //this where the magic i think should
// happen somehow i must get an Index form the selcted list entry

                function edit(index) { 

        // here fadeIN the form which is shown above.
                        $( "#block" ).fadeIn(500);  
        $( "#block" ).animate({width: '54.4%', opacity: '0.8',fontSize: '1.5em'}, 750);
        $( "#block" ).animate({height: '40%', opacity: '0.8', fontSize: '3em'}, 750);



//this is my Idea:


//I want to call the already exsiting click function with an Index
//inside the edit function.
//so the function conitnues like this:

                        $('.send').click(function onClick(index){


                        var age = $('#alter').val(index);
                        var preName = $('#vorname').val(index);
                        var secName = $('#nachname').val(index);            
                        var gender = $('#geschlecht').val(index);

                        liste[index].push = {
                            vorname: preName,
                            nachname: secName,
                            alter: age,
                            geschlecht: gender
                        };


                        generateList();
                        save();
                    });
                } 

            });

I can post the whole Program if requested. 如果需要,我可以发布整个程序。 it could be that ( or { are missing in this much of a code, but i asusuure you in my Program is everything right. 它可能是(或{在这么多代码中缺失,但我在我的程序中告诉你一切都是正确的。

at the moment it looks like this: 目前它看起来像这样:

$("#liste").click(function selectList (event) {
    var target = $( event.target );
    if ( target.is( "li" ) && !$("li").hasClass('selected')) {
        target.addClass('selected');
    }
    else if (target.is( "li" ) && $("li").hasClass('selected')) {
        target.removeClass('selected');
    }
});

$('.deleteSel').click(function delSelectedEntries () {
    alert("Ausgewählte Beiträge wuden gelöscht");
    var sel = $('.selected'); //stores the entrys 
    sel.remove(); // removes only the list entrys temporaly
});

$(".edit").click(function editSelectedEntries(){    
    var index = $('.selected').attr("index");
    edit(index);
});

edit Function: 编辑功能:

function edit (index){

    $( "#block" ).fadeIn(500);  
    $( "#block" ).animate({width: '54.4%', opacity: '0.8',fontSize: '1.5em'}, 750);
    $( "#block" ).animate({height: '40%', opacity: '0.8', fontSize: '3em'}, 750);

    $('#alter').val(list[index].alter);
    $('#vorname').val(list[index].vorname);
    $('#nachname').val(list[index].nachname);   
    $('#geschlecht').val(list[index].geschlecht);

    $('.send').click(function onClick(){ 

        var age = $('#alter').val(); 
        var preName = $('#vorname').val();
        var secName = $('#nachname').val();         
        var gender = $('#geschlecht').val();

        list[index] = {
            vorname: preName,
            nachname: secName,
            alter: age,
            geschlecht: gender
        };

        generateList();
    });

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM