Получение только идентификатора в списке

Я пытаюсь найти расстояние между двумя точками в mapquest. Я сделал это, жестко запрограммировав значение в JavaScript. Теперь я пытаюсь получить значение из двух учетных записей и использую значение широты и долготы для определения расстояния. Я создал контроллер, и в нем у меня есть список записей Longitude_ c и Latitude _c, и я передал значение в JavaScript, где я зациклил и добавил в массив. До этого он работает нормально, но моя проблема в том, что я получаю только идентификатор из массива, а не значение полей Latitude_ c и Longitude _c.

    <apex:page id="pageId" standardController="Account"       extensions="checkDistanceController">
  <script src="http://www.mapquestapi.com/sdk/js/v7.0.s/mqa.toolkit.js?     key=Fmjtd%7Cluua250221%2C2a%3Do5-9620ua"></script>

   <script type="text/javascript">


   function checkDistance(distance1) {
        alert('{!listzise}');
        var listsizeJs = {!listzise};
        alert(listsizeJs);
        var AcLon=new Array();
         var AcLat=new Array();
         var JsAcLst=new Array();

        var idx = 0;
         <apex:repeat value="{!acLst}" var="ele">
             JsAcLst[idx++]="{!ele}";
        </apex:repeat>



        for(var i=0; i<listsizeJs ; i++){
            alert("in for loop" + i);
            var llone={lat:40.730318, lng:-73.990603};   
            var llTow={lat:34.043897, lng:-118.209373};
            alert('Accunt List Apex : {!acLst}');
            alert('Accunt List JsLst:'+ JsAcLst[i]);

         }
             var distance = MQA.Util.arcDistance(llone, llTow, 'm');
            var distance1 = MQA.Util.distanceBetween(llone, llTow, 'm');
           alert(" Account Distance ........ " + Act_Distance);

           document.getElementById("pageId:formId:theBlock:pageBlockSectionid1:outputId1").innerHTML=distance;
           document.getElementById("pageId:formId:theBlock:pageBlockSectionid1:outputId2").innerH    TML=distance1;


 };



    </script>

     <apex:form id="formId">



            <apex:pageBlock title="Check Distance Between Vendors" mode="edit"  id="theBlock" >
                  <apex:pageBlockButtons location="both"> 
                          <apex:commandButton value="Find Distance" action="{!chkDistance}" onclick="checkDistance()" reRender="distanceID"/>

                  </apex:pageBlockButtons>
                  <apex:pageBlockSection columns="2" id="pageBlockSectionid1">

                          <apex:outputText id="outputId1" label="Arc `Distance :"></apex:outputText>
                           <apex:outputText id="outputId2" label="Distance Between :"></apex:outputText>

                 </apex:pageBlockSection>
            </apex:pageBlock>

      </apex:form>
</apex:page>

контролер

    public with sharing class checkDistanceController 
{

    public String Account { get; set; }



     public Account theAccount{get;set;}
     public Event_Equipment__c theEventEquipment{get;set;}
     public string Longitude {get;set;}
      public string Latitude {get;set;}
      public list<Account> acLst {get; set;}
     public decimal listzise{get;set;}
      list<Account> acLst = new list<Account>();

     public checkDistanceController(ApexPages.StandardController controller) {
         acLst = [Select Latitude__c, Longitude__c from Account where Longitude__c != null and Latitude__c != null limit 2];
        listzise = acLst.size();
   }
     }

кто-нибудь может помочь мне решить эту проблему.

Спасибо Ану


person AnuRaj    schedule 22.08.2012    source источник


Ответы (1)


Вы хотите поместить долготу и широту в массив как одну строку? Попробуй это:

<apex:repeat value="{!acLst}" var="ele">
    JsAcLst[idx++]="{!ele.Latitude__c},{!ele.Longitude__c}";
</apex:repeat>
person mast0r    schedule 22.08.2012
comment
и что мне делать для многомерного массива. - person AnuRaj; 23.08.2012
comment
Вот некоторая информация о многомерных массивах: kavoir.com/2009/ 02 / javascript-multi -imens-array.html - person mast0r; 23.08.2012