2015-10-16 45 views
0

我克隆元件的行。克隆后,原始文本框元素将被替换为链接。然后,如果用户选择删除克隆的项目,它就会回到原始形式原来的地方是tetxbox。这种倒退正常工作。只是删除克隆的项目没有发生。克隆项目,回来到原来的形式,但没有得到删除

当上删除点击后,克隆项目被删除,但不是在entirety.The点击链接的价值附加到list.Why下一个克隆项目并链接没有得到删除?

下面忽视的主题名称和重点携带值的链接与RM 开始之前删除点击(克隆项目)

enter image description here

后,取下点击(克隆项目)
enter image description here

这就是我如何克隆:

function getText(param) 
{ 
    var clony = $("div.clone_this#"+param).remove().clone(true, true).insertBefore("#sub"); 
    var price = $("input[type=text].text_"+param).val(); 
// alert(price); 
    clony.find('input[type=text]').replaceWith("<a href='ch'><span class='green' style='font-style:italic;'>RM "+price+"</span></a>"); 
    clony.find('.cr').append("<a href='del' onclick=removeThis('"+param+"')><img src='/register/cross.png'></a>"); 

} 

这是我如何删除和更改回元素的原始形式。

function removeThis(param) 
{ 
    event.preventDefault(); 


    $("div.clone_this#"+param).detach().appendTo("#sub"); 
    var price = $("a[href=ch]").text(); 
    $("div.clone_this#"+param).find($("a[href=ch]").text(price)).replaceWith("<input type='text' onfocusout='getText("+param+")' class='text_"+param+"' val='"+price+"' placeholder='RM'>"); 

    $("div.clone_this#"+param).find("a[href=del]").remove(); 
    return false; 
} 

HTML(仅包装)含量的jQuery注入

<h2>Finally, choose your Course:</h2> 
    <div class="row"> 
     <div class="small-12 medium-12 large-12 columns" class="choosen_subjects"> 
     </div> 
    </div> 

    <div class="row"> 
     <div class="small-12 medium-12 large-12 columns" id="sub"> 

<!--original list goes here--> 
     </div> 
    </div> 
+0

你能提供关于jsfiddle或HTML代码的演示吗? –

+0

@IrvinDominin,我更新我的职务与HTML,但内容是由jQuery的 – 112233

+0

附加@IrvinDominin,您的信息,如果我只用$( “#div.clone_this” + PARAM).detach()。appendTo(“#子“);没有这样的问题。只有当我使用下面的代码行时,它才会附加prev链接的值 – 112233

回答

0

最后,我自己找到了答案。 $(this)的用法解决了我的问题。

function removeThis(param) 
{ 
    event.preventDefault(); 

    $("div.clone_this#"+param).detach().appendTo("#sub"); 
    var price = $("a[href=ch]").text(); 
    $(this).find($("#sub a[href=ch]").text(price)).replaceWith("<input type='text' onfocusout='getText("+param+")' class='text_"+param+"' val='"+price+"' placeholder='RM'>"); 
    $("div.clone_this#"+param).find("a[href=del]").remove(); 
    return false; 
}