Heim  >  Fragen und Antworten  >  Hauptteil

Javascript – Probleme mit dem Eingabefeld

Nachdem der Ordner umbenannt wurde, verliert das Eingabefeld den Fokus und die Eingabe verschwindet, sodass der Textwert des übergeordneten Tags der Eingabewert ist.

HTML-Code

<p class="subject_folder_box hidden">
    <ul class="subject_folder_ul">
        <li class="subject_li_1">
            <a><span class="folder_name">默认文件夹</span>(<span class="floder_num">1</span>)</a>
        </li>
    </ul>
    <p class="subject_edit_li">
        <a title="添加" class="add_subject js_add" id=""></a>
        <a title="编辑" class="edit_subject js_edit" id=""></a>
    </p>
</p>

JS-Code

//编辑文件夹
$(".js_edit").click(function(){
    $(".subject_folder_ul li a").append("<a title='重命名' class='edit_subject js_edit1' id=''></a>");
});
//重命名文件夹
$(".js_edit1").live("click",function(){
    $(this).hide();
    var txt=$(this).siblings(".folder_name").text();
    $(this).parents("a").find(".folder_name").empty();
    $(this).parents("a").find(".folder_name").append("<input type='text' name='' maxlength='10' id='' value='"+txt+"'/>");
});
//添加文件夹
$(".js_add").click(function(){
    $(".subject_folder_ul").append("<li><input type='text' name='' maxlength='10' id='' placeholder='请输入子类名称'/></li>");
});

//input输入框失去焦点
$(".subject_li_1 input").on("blur",function(){
    var value=$(this).val();
    $(this).remove();
    $(this).parents(".folder_name").text(value);
});
                    
曾经蜡笔没有小新曾经蜡笔没有小新2697 Tage vor953

Antworte allen(1)Ich werde antworten

  • PHPz

    PHPz2017-05-31 10:44:01

    //input输入框失去焦点
    $(".subject_li_1 input").on("blur",function(){
        var value=$(this).val();
        $(this).remove();
        $(this).parents(".folder_name").text(value);
    });
    
    这一块代码也应该用 事件委托,节点是你后创建的。
    
    //重命名文件夹
    $(".js_edit1").live("click",function(){
        $(this).hide();
        var txt=$(this).siblings(".folder_name").text();
        $(this).parents("a").find(".folder_name").empty();
        $(this).parents("a").find(".folder_name").append("<input type='text' name='' maxlength='10' id='' value='"+txt+"'/>");
    });
    这个dom应该remove吧,不然以后会 越来越多

    Antwort
    0
  • StornierenAntwort