javascript가 대화 상자 내에서 올바르게 실행되는 것과 관련하여 som 문제가 있습니다.동적으로로드 된 대화 상자에서 자바 스크립트 실행
다음은 내 scripts.js의 코드 내가 현재 대화 상자 내부에 기본적으로 어떤 자바 스크립트 코드 화재 비록 대화
function LoadDialog(url, title) {
var DialogBox = $('<div class="dialog-container"></div>').dialog({ modal: true, autoOpen: false, resizeable: true }).dialog({ width: 500, height: 'auto' });
DialogBox.html('<div class="ajax-load"><img src="/Content/loading.gif" alt="loading"></div>').dialog({ buttons: null, title: 'Loading..' });
DialogBox.dialog('open').load(url, function() {
DialogBox.dialog({ title: title, Buttons: null, position: 'center', close: function (ev, ui) { $(this).dialog("destroy"); } });
});
}
$(function() {
$('.as-dialog').click(function (e) { LoadDialog($(this).attr('href'), $(this).attr('title')); return false; });
});
를로드하는 데 사용하는 느릅 나무입니다. 예를 들어, 대화 상자에 눈에 띄지 않는 확인을 사용하여 작은 폼을로드합니다. 아니 몸, 머리 등, 단지 컨테이너 div 및 양식 자체. 기본적으로 유효성 검사는 작동하지 않으며 script.js $ (function() {}) 아래 양식의 이벤트 처리기를 추가하면 실행되지 않습니다. 내가 JS 다음 참조 및 코드 블록을 추가하는 경우는 한 가지 문제와 함께 작동 양식로드 할 :
<script src="/Scripts/libs/jquery.validate.min.js"></script>
<script src="/Scripts/libs/jquery.validate.unobtrusive.js"></script>
<script type="text/javascript">
$(function() {
$('#form_Create').submit(function (e) {
e.preventDefault();
});
});
</script>
위의 코드에 대한 비 기능 검증이 항상 작동하지만 난 대화 상자를 열면 닫을 것입니다 , 다시 열면 preventdefault가 작동을 멈추고 양식이 게시됩니다. 이것은 아마도 스크립트 문제 또는 무언가가 여러 번로드 될 수 있습니까? 비록 'doc ready'코드가 scripts.js (표준 자바 스크립트 함수가 작동하지만)에 배치되면 대화 상자에서 작동하지 않기 때문에 나는 정말로 다른 옵션을 가지고 있지 않습니다. 동적으로로드 된 파일 내에서 javascript로 작업하는 더 좋은 방법이 있습니까? 아니면 신뢰할 수있는 방식으로 작업 할 수 있도록 전체 양식을 상위 페이지에 배치해야합니까? 처리 방법에 대한 의견이 있으십니까?
이 물건에 http://jsfiddle.net/을 제공 할 수있는 기회가 있으십니까? –