2013-03-29 3 views
0

다중 시트 Excel 통합 문서의 데이터로 양식을 채워야합니다. 나는 Json으로 직렬화하기 위해 VBA 스크립트를 작성하려고 시도했지만 매우 노동 집약적 인 것으로 보이고 jquery.populate라는 플러그인을 살펴 봤지만 그 중 하나를 찾아 낼 수 없었다.jquery 양식을 Excel 데이터로 채우는 방법

<fieldset> 
<div class="_50"><strong>Phytoplankton CNP Sample ID:</strong><input type="text" name="phyCNP"></div> 
<div class="_25">D1 Filtered (mL):<input type="text" name="2D1"></div> 
<div class="_25">D2 Filtered (mL):<input type="text" name="2D2"></div> 
</fieldset> 
<fieldset> 
<div class="_50"><strong>Algae Sample ID:</strong><input type="text" name="algae"></div> 
<div class="_25"> <label></label> 
     <input type="radio" id="radPeri1mod" name="algae" data-mini="true"/> 
     <label for="radPeri1mod">PERI-1-MOD</label> 
    <label> </label> 
     <input type="radio" id="radPeri1" name="algae" data-mini="true"/> 
     <label for="radPeri1">PERI-1</label></div> 
    <div class="_25"> Other: <input type="text" id="textOther" name="algae" /></div> 
    </fieldset> 

1.What 엑셀 다중 시트 통합 문서에서 필드를 채울 수있는 가장 좋은 방법입니다 : 여기

샘플입니까?

2. 필드 집합을 Excel 필드 수에 따라 즉석에서 추가 할 수 있습니까? 상기 필드 세트는 하나의 데이터 세트 또는 5 세트의 데이터를 가질 수있다. 기본 형식으로 하나의 빈 집합 만 원합니다.

답변

0

template builders에 들어 가지 않고도 좋은 구문이 없기 때문에 약간 지저분하지만 각 루프를 수동으로 작성/삽입 할 수 있습니다.

내가 그 측면에 정통하고 있지 않다 때문에 나는 아약스 질문에 대답 할 수는 없지만 다음과 같은 예는 가야 당신은

var ajaxForNumberOfFields, 
    ajaxForNumberOfDataSets, 
    ajaxForDataTitle, 
    ajaxForDataName, 
    $field, 
    $header, 
    $data1, 
    $data2; 

// if the form already has old data then clear it 
if(clearData) { 
    $('form:not(first-child)').remove(); 
} 

// ajax the number of fields 
// something like $.ajax('yourURL', options).done(function(data){ajaxForNumberOfFields = data); 

for(var i=0;i<ajaxForNumberOfFields;++i) { 
    // create a new fieldset 
    $field = $('<fieldset />'); 

    // ajax the number of data sets 
    // ajaxForNumberOfDataSets = $.ajax('yourURL', options).done(function(data){ajaxForNumberOfFields = data); 

    for(var j=0;j<ajaxForNumberOfDataSets;++j;) 
     // new data header and rows 
     $header = $('<div class=_50 />'); 
     $data1 = ('<div class=_25 />'); 
     $data2 = ('<div class=_25> Other: </div>'); 

     // ajax the data for the current set 
     // ajaxForDataTitle = $.ajax('yourURL', options).done(function(data){ajaxForNumberOfFields = data); 
     // ajaxForDataName = $.ajax('yourURL', options).done(function(data){ajaxForNumberOfFields = data); 

     // load header 
     $header 
      .append($('<strong />').text(ajaxForDataTitle)) 
      .append($('<input type="text" />').attr('name', ajaxForDataName)); 

     // build data 1 
     $data1 
      .append('<label />') 
      .append($('<input type="radio" id="radPeri1mod" data-mini="true"/>').attr('name', ajaxForDataName)) 
      .append('<label for="radPeri1mod">PERI-1-MOD</label>') 
      .append('<label />') 
      .append($('<input type="radio" id="radPeri1" data-mini="true"/>').attr('name', ajaxForDataname)) 
      .append('<label for="radPeri1">PERI-1</label>'); 

     // build data2 
     // iterating over fieldsets will restrict the use of the id attribute 
     // will need to use class attribute to locate the input, then figure out which one it is 
     $data2 
      .append($('<input type="text" class="textOther" />').attr('name', ajaxforDataName)); 

     // build the fieldset 
     $field.append($header).append($data1).append(data2); 

     // stuff the fieldset into the form 
     $('form').append($field); 
    } 
} 
시작
관련 문제