저는 Jquery를 처음 사용하는 숙련 된 개발자입니다. 함께 연결될 때 작동하는 코드가 있지만 별도의 경우가 아니고 Jquery 동작을 이해하고 싶을 때 문제가 발생합니다.Jquery - 체인화와 함께 작동하지만 떨어져 있지 않음
나는 4 개의 버튼이있는 <div>
입니다. 4 개의 버튼 중 하나가 눌려지면 4 개의 버튼이 모두 사라져야하고 새로운 버튼이 필요합니다 (새 버튼은 다른 CSS와 다른 값을 가진 버튼입니다)
나는 내가 다시 삽입을 시도 그때 그때
var splitstr = event.target.id.split('-');
var pick = splitstr[0];
var position_id = splitstr[1];
var singlebutton = '<button class="pick' + pick + ' pickbutton-box btn btn-primary btn-large madepick" name="pick" ' + 'id="made'+ position_id + '" ' + 'value="' + pick + '">' + pick + '</button>';
를 삽입 할 새 버튼을 구축하고이
$(this).parent().empty();
처럼 <div>
지우 상위 :
이렇게하면 <div>
에있는 4 개의 버튼이 모두 제거되지만 새 버튼이 추가되지 않습니다. 그러나 빈을 추가하기 전에 문자열을 작성하면 추가됩니다.
var singlebutton = " ---- HTML CODE for button ---- "
$(this).parent().empty().append(singlebutton);
모든 것이 예상대로 작동합니다. 이것은 나에게 어떤 의미가없는 것처럼 보입니다. 누군가 일어날 일을 설명해 주시겠습니까? 에 의해 제거되는 클릭 된 버튼,에, this
점을
$('div button').click(function() {
$(this).parent().empty();
// etc
});
이 같은
<div>
<button>click me</button>
<button>click me</button>
<button>click me</button>
<button>click me</button>
</div>
그리고 이벤트 핸들러 :
버튼 대신 HTML 코드를 사용하는 대신 실제 코드를 표시 할 수 있습니까? 문제를 일으킬 수있는 가능성이 있습니다. –
''this' 값이 별도의 줄 버전에서'.empty()'바로 다음에'undefined'가 될 것이라고 생각합니다. 그것을 테스트하고 확인해 주시겠습니까? – bfavaretto
Mike Robinson - 요청에 따라 코드가 추가되었습니다. 기본적으로 나는 픽업과 나중에 필요할 다른 ID를 구성하는 ID를 가져옵니다. 나는 그것을 깨뜨린 다음 버튼을 재구성합니다. –