簡體   English   中英

.replaceWith()在jQuery 1.9+中不起作用

[英].replaceWith() is not working in jQuery 1.9+

我正在嘗試克隆<textarea>並克隆並替換標簽<label> Number 1 <label>的數字,每次按下添加按鈕時,該數字增加1(因此第一個標簽將具有Number 1,其下方的標簽2等)。

這適用於jQuery 1.8及以下版本,但以上任何內容均不會克隆並將數字加1。

HTML

<div>
 <label for="number">Number <span class="one">1</span></label>
 <textarea id="number"></textarea>
</div>
<button>Add</button>

jQuery的

var $row = $('div').clone(),
    cloneCount = 2;

$('button').click(function () {
    $row.clone().insertBefore($("button"));
    $('span').clone().attr('span', cloneCount++).replaceWith($('[class=one]:last')).text(cloneCount - 1);
});

JSFIDDLE: http//jsfiddle.net/wba6jvkj/

我不知道您在嘗試使用.attr('span'為何,為什么它似乎在<1.8中有效,或者您為什么要從cloneCount中減去一個,但這不應該做您想要的:

var $row = $('div').clone(),
    cloneCount = 2;

$('button').click(function () {
    $row.clone().insertBefore($("button"));
    $('span.one:last').text(cloneCount++);
});

jsFiddle示例

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM