동적 HTML 시나리오에서 (data-*
속성을 통해) 눈에 잘 띄지 않는 자바 스크립트를 만드는 방법을 찾고 있습니다.눈에 잘 띄지 않는 javascript 및 동적 HTML
<input type="date" data-min-date="today" />
그리고 작업을 수행하는 JS :
(function(){
$(function() {
$("input[type=date]").each(function() {
var el = $(this);
el.datepicker(el.data());
});
});
})(jQuery);
지금 내가 알몸으로 입력을 변환하는 눈에 거슬리지 크로스 브라우저의 방법이 필요를의 우리가 JQuery와 - UI를 날짜 선택기를 나타내는 input
요소가 척하자 datepickers으로. 입력이 동적으로 추가됩니다. 일반적으로 datepickers를 추가하는 코드는 제어 할 수 없습니다. 일반적으로 코드는 jquery.ajax.unobtrusive 또는 jquery-pjax (둘 다 jQuery.html() 메소드 사용)을 통해 서버 측 미리 렌더링 된 html로 주입됩니다. 하지만 모든 jQuery 기반 시나리오에서 작동 할 수있는보다 일반적인 표준이 필요합니다.
나는 mutation events을 보았지만 이들은 IE에서 지원되지 않습니다.
전체 jsfiddle - 예를 http://jsfiddle.net/zv9Rt/1/
입력 요소는 어떻게 추가됩니까? jQuery 또는 DOM을 통해? –
@RobW, 실제로 jquery-pjax 또는 jquery.ajax.unobtrusive가됩니다. 그것들은 모두 jquery.html 메서드를 사용합니다. 하지만 좀 더 일반적인 솔루션을 원합니다. – hazzik
setTimeout/setInterval을 사용하여 새로운 삽입을 검사하거나'.append','.html' 등을 감싸고 새로운'input [type = date]'요소가 있는지 확인할 수 있습니다. –