2010-06-16 2 views
5

여러 입력 요소가있는 사용자 정의 필드를 만드는 방법이 있습니까? 나는 documentation을 컨설팅하고 있으며 단일 입력 요소를 작성하는 것은 매우 간단합니다. 그러나 둘 이상을 어떻게 추가 할 것인지 정확히는 모르겠습니다.사용자 지정 편집 유형 필드에 여러 입력 요소 추가

누구도이 다리를 넘어 섰습니까? 그렇다면 어떻게하셨습니까?

... 
{name: 'Dimensions', index: 'Dimensions', hidden: true, editable: true, 
edittype: 'custom', editoptions: {custom_element: dimensionsElement, 
custom_value: dimensionsValue}, editrules: {edithidden: true}}, 
... 


function dimensionsElement(value, options) { 
    var el = document.createElement("input"); 
    el.type = "text"; 
    el.value = value; 
    return el; 
} 

function dimensionsValue(elem) { 
    return $(elem).val(); 
} 

답변

11

여러 입력 요소를 만들 jQuery를 사용할 수 있습니다

는 여기에 몇 가지 예제 코드입니다. 당신의 분야, 예를 들어 인 경우 사람 이름은 당신이

{ name: 'FullName', editable: true, edittype: 'custom', width: 300, 
    editoptions: { 
     custom_element: function(value, options) { 
      // split full name to the first and last name 
      var parts = value.split(' '); 
      // create a string with subelements 
      var elemStr = '<div><input id="'+options.id + 
         '_first" size="10" value="' + parts[0] + 
         '" /></br><input id="'+options.id + '_last' + 
         '"size="20" value="' + parts[1] + '" /></div>'; 
      // return DOM element from jQuery object 
      return $(elemStr)[0]; 
     }, 
     custom_value: function(elem) { 
      var inputs = $("input", $(elem)[0]); 
      var first = inputs[0].value; 
      var last = inputs[1].value; 
      return first + ' '+ last; 
     } 
    }}, 

에 따라 사용할 수 있도록 그것은 원인의 원시 코드 조각이고 당신은 input 요소의 레이아웃 (예를 들어 size 속성의 값)을 개선한다. 사용자 정의 편집 요소 작성의 주요 개념을 보여줍니다.

업데이트 : 사용자 정의 편집 를 사용하는 경우가 recreateForm: true 매개 변수 (http://www.trirand.com/jqgridwiki/doku.php?id=wiki:form_editing 참조)를 사용하는 중요하다. 자세한 내용은 jqgrid - Set the custom_value of edittype: 'custom'을 참조하십시오.

관련 문제