저는 Material Design Lite를 사용 중이며 get() jquery 메소드를 통해 팝업을 만들고 있습니다. 팝업 요소가 생기면 MDL 텍스트 필드 클릭이 작동하지 않습니다. 하지만 페이지로드가 잘 작동하면 팝업을로드합니다.
나는 CSS 파일과 js를로드 중입니다. 문제는 js로드 후 요소를로드하는 것 같아요 어떻게 해결할 수 있습니까? 나는 과거에 그렇게했고 이런 문제가 없었습니다.
팝업을로드 한 후 콘솔에 오류가 없습니다.
function create(){
$("#create").click(function(e)
{
e.preventDefault();
var linkPopup = $(this).attr('data-popup');
$.get(linkPopup, function(response)
{
$(".opacity").css("display","block");
$(".popup").css("display","block");
$('.popup').html(response);
$(".popup-close i").click(function()
{
$(".popup .mdl-card").remove();
$(".popup").css("display","none");
$(".opacity").css("display","none");
});
});
});
}
해결책 : 난 후로드 elments을 인식하지 못하기 때문에 DOM을 업그레이드 할이 줄을 추가해야합니다.
componentHandler.upgradeDom();
감사의 동적 HTML을 DOM에 추가 된 후
요소가 DOM에로드 된 후 이벤트 핸들러를 연결하거나 일부 상위 요소에 연결 한 후 이벤트를 위임합니다. – sabithpocker
나는 그것을하고 클릭 작동하지만 요소를 클릭하면 초기 상태로 돌아 가지 않습니다. $ ("# 입력 이름") .click (함수 (이벤트) { $ (this) .parent(). addClass ("is-upgraded is-focused"), }); 더 나은 솔루션이 있습니까? mdl이 이미 완료했기 때문에 나중에보기를 충전하지 않기 만하면됩니다. @sabithpocker – user3242861