javascript
  • arrays
  • associative-array
  • 2016-07-20 99 views 0 likes 
    0

    的指標,我想保留值象下面保持多個值在JavaScript的數組

    var skus = [];  
    <?php 
        foreach($col as $Product) 
         { 
          ?> 
           <script type="text/javascript"> 
            skus['<?php echo $Product->id; ?>'] = '<?php echo $Product->sku; ?>','<?php echo $Product->color; ?>'; 
           </script> 
          <?php 
         } 
        ?> 
    

    但是,這是行不通的。

    UPDATE

    後來我想使用index.Is能夠查詢的陣列的SKU的值在JavaScript中像下面??

    var my_array = []; 
    my_arry['abc'] = 'pqr','xyz'; 
    

    是否有可能在JavaScript中的數組索引中存儲多個值? 感謝

    +2

    「但它不工作」不是一個好的描述。你應該解釋究竟發生了什麼問題 – nem035

    +0

    Set var skus = new array();在循環開始之前 –

    +0

    我沒有得到數組索引的第二個值。謝謝。 –

    回答

    0

    你可以使用一些對象:

    所以:

    skus['<?php echo $Product->id; ?>'] = {'sku':'<?php echo $Product->sku; ?>','color':'<?php echo $Product->color; ?>'}; 
    

    所以SKU的數組中的每個元素有兩個鍵

    +0

    通常更好地使用數組,當結構很簡單時,爲了性能的緣故 – Dellirium

    +0

    如何在** skus **數組中找到具有匹配值sku **和** color **的索引謝謝 –

    +0

    for(var i = 0,len = skus.length; i chf

    1

    它看起來像你的代碼問題的對象是JS中的一個錯字。我假設你想用JS中的PHP值創建一個數組,所以它看起來像缺少的是你的值列表中的方括號。

    像這樣: skus['<?php echo $Product->id; ?>'] = ['<?php echo $Product->sku; ?>','<?php echo $Product->color; ?>'];

    0

    我的PHP是一個有點生疏,但是這是什麼意思?

    <script type="text/javascript"> 
        var skus = []; 
        <?php foreach($col as $Product) { ?> 
         skus['<?php echo $Product->id; ?>'] = ['<?php echo $Product->sku; ?>','<?php echo $Product->color; ?>']; 
        <?php } ?> 
    </script> 
    

    您需要[]在該中間線上,因爲您試圖將兩個值保存到數組的每個「單元格」中,對嗎?

    +0

    是的,你是對的。但是在** = **後我得到了另一個數組。我有兩個值,我必須在** sku **和** color **中搜索/匹配。然後我必須從數組中選擇索引(** id **)。我怎樣才能做到這一點?? –

    +0

    所以你有'$ Product-> sku'和'$ Product-> color'並且想要找到'$ Product-> id'?你可以創建一個對象查找,就像'var skus = {}; skus ['<?php echo $ Product-> sku; ?> - <?php echo $ Product-> color; ?>'] ='<?php echo $ Product-> id; ?>';' – IMTheNachoMan

    相關問題