2012-10-02 2 views
0

CreateTemplate, OpenTemplate 및 기타 많은 Jquery 대화 상자 설정은 대부분 동일한 시간 설정을 사용하지만 높이와 너비에 대한 예외가 있습니다.jquery 대화 상자에 속성 배열 전달

모든 키/값 설정이있는 배열의 jquery.dialog() 함수 정렬을 전달하여이 배열을 쉽게 전달할 수 있습니까?

$(document).ready(function() { 


     // I would like to setup here sort of an array with properties and values 
     // as basis for each click-handler 

      /************************* Open template ****************************/ 
      $('#OpenTemplate').click(function (e) { 
       e.preventDefault(); 
       var link = this; 

       $('#MyDialog').dialog({ 
        open: function (e) { $(this).load($(link).attr('href')); }, 
        title: link.innerHTML, 
        autoOpen: true, 
        modal: true, 
        show: 'fade', 
        hide: 'fade', 
        width: 250, 
        height: 200, 
        buttons: 
        { 
         "OK": function() { openTemplate($(this), $('form', this)); }, 
         "Cancel": function() { $(this).dialog("close"); } 
        } 
       }); 
      }); 

      /************************* Create template ****************************/ 
      $('#CreateTemplate').click(function (e) { 
       e.preventDefault(); 
       var link = this; 

       $('#MyDialog').dialog({ 
        open: function (e) { $(this).load($(link).attr('href')); }, 
        title: link.innerHTML, 
        autoOpen: true, 
        modal: true, 
        show: 'fade', 
        hide: 'fade', 
        width: 250, 
        height: 200, 
        buttons: 
        { 
         "OK": function() { createTemplate($(this), $('form', this)); }, 
         "Cancel": function() { $(this).dialog("close"); } 
        } 
       }); 
      }); 

    }); 
+1

나는 기본을 무시 제안 : 당신이 dialogObject에 버튼을 추가해야하는 경우

$('#dialog-confirm').attr('height', '250'); 

: 당신이 다음 높이를 변경하려면, 다음과 같이 수행하여 기존의 대화를 변경할 수 있습니다 옵션. http://stackoverflow.com/questions/2287045/override-jqueryui-dialog-default-options –

답변

0

난 그냥 이런 식으로 일을하려고합니다 :

var dialogObject = { title: 'Title', width: 250 }; 
$('#CreateTemplate').dialog(dialogObject); 

이 개체는 당신의 모든 대화 상자에 걸쳐 동일합니다 알고있는 모든 값을 포함 할 수 있습니다.

var dialogObject = { 
    title: 'Title', 
    width: 250, 
    buttons: { 
    "Ok": function() 
     { 
     $(this).dialog("close"); 
     } 
    } 
}; 
+0

버튼 배열을 예를 들어 새 기능에 "OK"로 설정 하시겠습니까? – Elisabeth

+0

개체는 일반적인 특성 목록 안에있는 것을 취하여 목록을 대괄호로 묶습니다. 내 게시물을 편집했습니다. 이 사이트의 구문을 배우려고합니다. 그것을 고치려고 계속 노력합시다! –

+0

마지막 코멘트에 코드 태그 오류가 있습니까? 나는 유에서 몇 가지 코드를 놓치고 있습니까? – Elisabeth

관련 문제