2013-07-17 6 views
4

현재 페이지 단편을 가져 와서 부트 스트랩 모달로로드 중입니다.페이지 단편을 가져올 때 부트 스트랩 모달로 스크립트로드

이 페이지 조각에는 Google지도를로드하는 데 필요한 jQuery가 포함되어 있지만 모달이 콘텐츠를로드하면 모든 스크립트가 삭제되어 이후에지도가로드되지 않습니다.

모덜 - 바디 클래스 안에 직접 스크립트를 삽입하더라도 여전히 스트립이 제거됩니다.

해결 방법이 있습니까? 우리가 현재 모달을 실행하는 데 사용하고 무엇

은 다음과 같습니다 -

<a href="/stores .topclass" data-target="#StoresModal" data-toggle="modal">Launch demo modal</a> 

정확하게 대답 할 필요하다면 내가 사용 추가 코드를 제공 할 수 있습니다. 그래서 우리는 부트 스트랩 모달를 트리거하는 사이트 전체 링크를 포함하고 요청에 따라 사용에 더 많은 코드를 제공하는 ...

:

=== 편집. 모달을 실행하는 링크는 위와 here is the rest of the code in relation the modal에서 볼 수 있습니다.

모달에로드하려는 내용은 /stores에있는 페이지 조각 일 뿐이므로이 URL에로드 된 모든 코드는 here으로 볼 수 있습니다. 이 페이지에서 우리는 실제로 192 행에있는 .modal-container 내부의 모든 것을로드하려고하지만 필요한 스크립트가이 파일의 div 외부에 있기 때문에 모달로로드하려고 할 때 이것을 캡처하지는 않습니다.

<a href="/stores .modal-container" data-target="#StoresModal" data-toggle="modal">Launch demo modal</a> 

이 다음 시도하고 우리가 필요한 스크립트를 당길 수 있도록 단지 DIV 내부 전체 파일 내용을 포장하고 모달 페이지의 조각 같은 내용의 전화를 우리가 주도 -이 : 같은 이전에, 우리의 모달 트리거는 보았다 #map_canvas를로드하는 데 필요하지만 아아에서는 모든 스크립트가 모달에서 제거됩니다.

희망 사항은 우리가 성취하려는 것을 더 잘 설명합니다.

=== 편집 2 : 나는 다음과 같은 코드를 사용하고 있습니다 ...

답변

0

을 우리는 실제로 해결 방법을 통해이 문제를 해결했지만 그렇게 빨리 내가 ​​할 수있는 대답을 게시 할 예정 거대한 작업이었다 다음 트리거

$('[data-toggle="modal"]').click(function(e) { 
      e.preventDefault(); 
      var url = $(this).attr('href'); 
      if (url.indexOf('#') == 0) { 
       $(url).modal('open'); 
      } else { 
       $.get(url, function(data) { 
        $(data).modal(); 
       }).success(function() { $('input:text:visible:first').focus(); }); 
      } 
     }); 

: 부트 스트랩 모달에보기를로드하는 데이 방법을 사용

<a href="new" role="button" data-backdrop="static" data-keyboard="false" class="btn btn-success" rel="tooltip" data-placement="top" title="text here" data-toggle="modal" alt="text here"><i class="icon-plus icon-white"></i> </a> 

당신은 승 모든 것을 당신에게 스크립트를 보장합니다 귀하의 모달이 표시 될 때로드됩니다. 이것은 내 모달을 정확하게 보여 주었다.

내 양식 (new.html)에 표시해야하는 모든 항목이 완벽하게 표시됩니다.

그러므로 모든 releavant 코드를 /stores에 해당하는 페이지의 Google Map에 두는 것이 좋습니다.

편집 당신의 트리거가되어야합니다 :

<a href="/stores" class="topclass" data-target="#StoresModal" data-toggle="modal">Launch demo modal</a> 

대신에 :

<a href="/stores .topclass" data-target="#StoresModal" data-toggle="modal">Launch demo modal</a>` 

Edit2가

내가 볼 문제, 당신 모달 포함하지 않는다는 것입니다 이것들은 당신의 포함 종파 내에 있지 않기 때문에 JS 파일들을 얻는다. 이온. 나는 PHP 전문가가 아니지만, 여기 당신이 시도 할 수있는 옵션입니다 :

옵션 1 (매우 깨끗하지 않음) 당신은 <div class="modal-container"></div> 내부 <script>Google Map required JS File</script> 태그를 추가 할 수 있습니다

있지만 중복 태그를 얻을 것이다 같은 JS 파일.

옵션 2 (? 가능할 수 있음)

새로운 파일을 생성하고 필요한 JS 파일로 섹션 <div class="modal-container"></div>를 추가합니다.

새 파일을 포함시켜 192 행을 바꾸고 현재 저장 객체를 전달하여 모달을 호출하여 모달에 정보를 표시하십시오.

도움이 필요하시면 알려주세요.

+0

답장을 보내 주셔서 감사합니다. 모든 스크립트와 필요한 jQuery는 이미/stores에 해당하는 페이지에 이미 있습니다. 편집에서 제안한 트리거와 관련하여 내가 제안한 내용으로 변경하면 .topclass 내부의 페이지 조각이 아닌/stores에서 전체 페이지가로드됩니다. – zigojacko

+0

아, 알았습니다. gmap div에서 높이와 너비를 설정 했습니까? 더 많은 코드를 보여줄 수 있습니까? – olamarche

+0

예, 의존하는 jQuery가 캔버스와 함께 모달을 통해로드되지 않기 때문에 Google지도는 순전히로드하지 않습니다. 물론, 나는 코드의 양 때문에 pastebin을 통해이 시나리오와 관련된 전체 코드에 대한 링크를 제공하는 질문을 편집했습니다. 감사. – zigojacko

0

StackOverflow가 코드를 변경 했습니까?

<a href="/stores .topclass" data-target="#StoresModal" data-toggle="modal">Launch demo modal</a> 

href 내에 클래스 이름이 있습니까? 이것은 문제의 일부일 수 있습니다.

관련 문제