2014-02-14 1 views
0

다소 스파게티 코딩 된 업로드 프로그램을 상속 받았으며 jsTree를 사용하여 업로드 된 파일을 나열합니다. jsTree를 마우스 오른쪽 버튼으로 클릭하면 몇 가지 옵션 (파일 업로드, 폴더 추가, 폴더 삭제 등)이있는 옵션 상자가 표시됩니다. 그러면 별도의 페이지로 연결됩니다. 폴더 추가와 같은 옵션을 클릭하면 별도의 페이지로 이동하는 것이 아니라 모달 팝업을 트리거 할 수 있는지 궁금합니다. jsTree : 모달을 사용하여 "폴더 추가"(또는 오른쪽 클릭 옵션) 열기

function buildTreeViewContextMenu(node) 
{ 
    var items = {}; 
    if ($(node).attr('id') == 'trash') 
    { 
     <?php if($totalTrash > 0): ?> 
     var items = { 
      "Empty": { 
       "label": "<?php echo t('empty_trash', 'Empty Trash'); ?>", 
       "action": function(obj) { 
        confirmEmptyTrash(); 
       } 
      } 
     }; 
     <?php endif; ?> 
    } 
    else if ($(node).attr('id') == '-1') 
    { 
     var items = { 
      "Upload": { 
       "label": "<?php echo t('upload_files', 'Upload Files'); ?>", 
       "separator_after": true, 
       "action": function(obj) { 

        window.location='/'; 
       } 
      }, 

      "Add": { 
       "label": "<?php echo t('add_folder', 'Add Folder'); ?>", 
       "action": function(obj) {      
        window.location='/view/folder/add?p='+obj.attr("id"); // this part I want to convert to a modal 
       } 
      } 
     }; 

    } 

그리고 예를 들어

는 여기에 "폴더 추가"에 대한 모달입니다 : 여기

내가 함께 작동하도록 노력하고 코드의

<div class="panel-body"> 
      <!-- Modal --> 
      <div class="modal fade" id="modalAddFolder" tabindex="-1" role="dialog" aria-labelledby="modalAddFolder" aria-hidden="true"> 
        <div class="modal-dialog"> 
          <div class="modal-content"> 
           <div class="modal-header"> 
             <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button> 
             <h4 class="modal-title">Add Folder</h4> 
           </div> 
           <div class="modal-body"> 
            <?php require_once("folder/add.php"); ?> 
           </div> 
         </div> 
       </div> 
     </div> 
     <!-- /Add Folder modal --> 
    </div> 
    <!-- /modal --> 

내가 this page 작업을 시도했다가하지만, 그것을 통합 할 수 없었습니다.

답변

1

다른 사람에게 도움이되기를 바랍니다. 그것은 내가 생각했던 것보다 훨씬 더 간단했습니다 :

그냥 jQuery로 모달을 트리거 할 수 있습니다. (왜 나는 자바 스크립트/jQuery를 혼합 할 수 없다고 생각하지 않습니다. 어쩌면 좋은 연습은 아니지만 지금은 작동합니다.)

window.location과 달리이 변수는 변수를 시작하지 않지만 필요한 경우 쉽게 연결할 수 있습니다.

+0

저장된 날! 감사 – aksappy