gpt4 book ai didi

javascript - Jquery 克隆和更新按钮图标

转载 作者:数据小太阳 更新时间:2023-10-29 05:10:33 25 4
gpt4 key购买 nike

我觉得我在这里忽略了一些非常简单的事情。我需要另一双眼睛。我在这上面花的时间比我应该花的多得多。

看看这个 fiddle => http://jsfiddle.net/R8SxU/

为什么图标添加了一年多了还不更新?我希望最上面的始终是加号,以象征添加新的一年,而下面的其余部分始终是减号以删除。它适用于第一个,但仅适用于第一个。我相信我有正确的选择器,因为每个按钮都正确激活了功能(控制台输出)。

HTML

<div>
<label for="year-0">Enter Year</label>
<input id="year-0" type="number" title="Enter Year"/>
<button id="addYear" title="Add Year">Year</button>
</div>

查询

$('#addYear')
.button({icons: { primary: 'ui-icon-circle-plus' } })
.on('click', function() {
var clone = $('div').first().clone(true),
peroid = $('div').length;

//update ID
$(clone).find('label').prop('for','year-' + peroid);
$(clone).find('input').prop('id','year-' + peroid);

$('div:first button')
.prop('id','')
.attr('title','Remove Year')
.addClass('removeYear');


$(clone).insertBefore('div:first');
$('.removeYear:first')
.off('click')
.button({ icons: { primary: 'ui-icon-circle-minus' } }) // Why Wont This Work
.on('click', function() { console.log('remove function'); });

});

最佳答案

尝试以下操作:

$('#addYear').button({
icons: {
primary: 'ui-icon-circle-plus'
}
}).on('click', function () {
var clone = $(this).parent().clone(),
peroid = $('div').length;

clone.find('label').prop('for', 'year-' + peroid).end()
.find('input').prop('id', 'year-' + peroid).end()
.find('button').prop('id', 'id' + peroid).prop('title', 'Remove Year')
.addClass('removeYear').find('span:first').addClass('ui-icon-circle-minus');

clone.insertAfter('div:last');
});

$(document).on('click', 'div:not(":first") button', function () {
$(this).closest('div').remove();
});

http://jsfiddle.net/Y33GV/

关于javascript - Jquery 克隆和更新按钮图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15299854/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com