我一整天都在研究我的第一个 javascript,它旨在让用户使用字段和提交按钮将元素插入文本框。放入列表的元素旁边有一个删除按钮。
我想知道是否有人对我如何使用列表旁边的删除链接删除元素有任何聪明的想法。单击此链接后,我想将其从列表中删除,但我真的看不到一种简洁明了的方法。
演示 Jsfiddle:http://jsfiddle.net/spadez/ZTuDJ/46/
// If JS enabled, disable main input
$("#responsibilities").prop('disabled', true);
// $("#responsibilities").addClass("hidden");
// If JS enabled then add fields
$("#resp").append('<input placeholder="Add responsibility" id="resp_input" ></input><input type="button" value="Add" id="add"> ');
// Add items to input field
var eachline='';
$("#add").click(function(){
var lines = $('#resp_input').val().split('\n');
var lines2 = $('#responsibilities').val().split('\n');
if(lines2.length>10)return false;
for(var i = 0;i < lines.length;i++){
if(lines[i]!='' && i+lines2.length<11){
eachline += lines[i] + '\n';
}
}
$('#responsibilities').text($("<div>" + eachline + "</div>").text()).before("<li>"+$("<p>"+lines+"</p>").text()+"<span class='right'><a href='#'>Remove</a></span></li>");
$('#resp_input').val('');
});
我知道人们有更多的经验,所以如果有人愿意就如何实现这一目标给我任何帮助或建议,我将非常感激。
最佳答案
非常简单:
$(document).on('click', '.right a', function(){
$(this).closest('li').remove()
})
fiddle :http://jsfiddle.net/ZTuDJ/47/
要同时删除文本区域,请使用:
$(document).on('click', '.right a', function(){
var el = $(this).closest('li')
var index = $('li').index(el);
var text = eachline.split('\n');
text.splice(index, 1);
eachline = text.join('\n')
$('#responsibilities').text(eachline)
el.remove()
})
fiddle :http://jsfiddle.net/ZTuDJ/50/
关于javascript - 使用 jquery 从列表中删除元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17178202/