0
JQuery를 사용하여 특정 sessionStorage 값을 삭제할 수 있는지 궁금합니다. 지금까지 입력 필드를 삭제할 수 있지만 sessionStorage 값을 삭제할 수 없습니다. 내 코드는 다음과 같습니다. 여기 JQuery를 사용하여 특정 sessionStorage 값을 삭제하는 방법
는 https://jsfiddle.net/fj324rzg/1/HTML 내 jsfiddle JQuery와
var worker_record = [];
$(document).ready(function(){
workerData();
$('.worker').on('click', function(e){
e.preventDefault();
e.stopPropagation();
var title = $('.title:first').val();
var someData = {title: title};
worker_record.push(someData);
sessionStorage.worker = JSON.stringify(worker_record);
workerData();
});
function workerData(){
var max_fields = 6;
var x = 1;
if(!(typeof sessionStorage.worker === 'undefined' || sessionStorage.worker.length<1)){
worker_record = JSON.parse(sessionStorage.worker);
}
$('.add-more').empty();
for(var i=0; i<worker_record.length; i++){
if(x < max_fields){
x++;
var title = worker_record[i].title;
var worker = '<div><div class="delete-worker"><a title="" href="#">Delete</a></div><select name="title[]" class="title title-options"><option value="Select a Title" selected="selected">Select a Title</option><option value="Boss">Boss</option><option value="Worker">Worker</option><option value="Manager">Manager</option></select></div>';
$('.add-more').append(worker);
$('.title:eq('+$('.title-options').length+')').val(title);
}
}
$('.title:first').val('Select a Title');
}
$('.add-more').on('click', '.delete-worker', function(e){
e.preventDefault();
e.stopPropagation();
$(this).parent('div').remove(); x--;
});
});
이제 다음과 같은 오류가 발생합니다 : 'Uncaught ReferenceError : x is not defined'else 모든 것이 정상입니다. – obi
함수 외부에서 x에 액세스 할 수 없습니다. 인덱스를 가져와 Dom을 제거한 후 스플 라이스 인수 – tsb
에 전달할 수 있습니다. 이제 입력을 삭제하면 다른 입력을 추가 할 수 없습니다. – obi