2013-07-30 54 views
0

我在測試html頁面中的代碼工作正常。它構建了一個NxN多維數組,它在構建頁面時將QuickBase表單中的字段分組。下面是填充window.flds數組的代碼:如何在QuickBase中使用jQuery填充多維數組

<script type="text/javascript"> 
    var flds = []; 
    function pushFields(groupIdx,srcVal){ 
     var iGroupIdx = groupIdx+1; 
     if(iGroupIdx > window.flds.length){ 
      var fldsfloor = window.flds.length; 
      for(var i = fldsfloor; i < iGroupIdx; i++){ 
       if(!window.flds[i]){ 
        window.flds[i] = []; 
       } 
      } 
     } 
     var j = window.flds[groupIdx].length; 
     window.flds[groupIdx][ j ] = srcVal; 
    } 
    //dummy code to populate window.flds manually: 
    pushFields(17,101); 
    pushFields(17,104); 
    pushFields(5,102); 
    pushFields(28,103); 
    pushFields(28,105); 
</script> 

當我嘗試將其硬塞到QuickBase模板,這是行不通的。 QuickBase使用jQuery構建字段。如何調用JavaScript函數pushFields(X,Y)從jQuery的:

function loadProcess(root, rid) { 
    //... code doesn't get relevant until here: 
    if(groupx == 5){ 
     var processRes = getResults("abcde1fgh", "{3.EX." + rid + "}", "3.102", "60");//the value of 3 would be 5 for the first parameter, and 102 would be the second parameter. 
     var ctrl1 = "<br /> Date" + addControl(v[3], "Date", "", v[102], "", " "); 
    } 
    //... code doesn't get relevant again until here: 
    if(groupx == 17){ 
     var processRes = getResults("abcde1fgh", "{3.EX." + rid + "}", "3.101.104", "60");//the value of 3 would be 17 for the first parameter, and 101 and 104 would be the second parameter. 
     var ctrl2 = "<br /> FName" + addControl(v[3], "Text", "", v[101], "", " "); 
     var ctrl3 = "<br /> LName" + addControl(v[3], "Text", "", v[104], "", " "); 
    } 
    //... code doesn't get relevant again until here: 
    if(group3 == 28){ 
     var processRes = getResults("abcde1fgh", "{3.EX." + rid + "}", "3.103.105", "60");//the value of 3 would be 28 for the first parameter, and 103 and 105 would be the second parameter. 
     var ctrl4 = "<br /> Email" + addControl(v[3], "Text", "", v[103], "", " "); 
     var ctrl5 = "<br /> Phone" + addControl(v[3], "Text", "", v[105], "", " "); 
    } 
} 

回答

0

謝謝大家,我能找出解決的辦法:

   pushFields(102,v[3]);