2015-09-28 69 views
0

我從下拉列表中選擇值並希望以下列方式使用它。 像這裏一樣,我從變量selectedtext中的下拉菜單返回值。對象下的對象

<p style="font-size:150%;margin-left:20%; margin-top:50px"> Sources : 
 
     <select id="drop" name="drop"> 
 
      <option value="0">Select Source</option> 
 
      <option value="1">RBSK</option> 
 
      <option value="2">MIDRS</option> 
 
      <option value="3">ATM </option> 
 
      <option value="4">RT </option> 
 
     </select> 
 

 
     <script type="text/javascript"> 
 
      $(function() { 
 
       $("#drop").change(function() { 
 
     var selectedText = $(this).find("option:selected").text(); 
 
//var selectedValue = $(this).val(); 
 
//alert("Selected Text: " + selectedText + " Value: " + selectedValue); 
 
       }); 
 
      }); 
 
     </script>

現在,我想在這裏用這個值:

var deMapping = { 
 
      RBSK: {'dsUID': 'tdTwLUxcQ8R', rootNodeName: 'RBSK_GIS_Indicator', orgUnitTagName: 'MCTSCode', des: [ 
 
       { 
 
        xmlid: "Childhood_Diseases_0_6_Female", 
 
        dataElement: "oV163sbcJ0N", 
 
        categoryOptionCombo: "Cmzbo9LD8pJ" 
 
       } 
 
       ]}, 
 
      ATM:{}, 
 
      ABC:{}, 
 
      DEF:{} 
 
};

我想以這種方式來使用selectedText:

deMapping.RBSK.des [5] .categoryOptionCombo; //這裏它會返回des數組中第6個元素的正確值。

現在我想用selectedText替換用戶從下拉菜單中選擇的RBSK。

所以如果用戶選擇ATM,它應該返回與ATM相關的值。像deMapping.selectedText.des [5] .categoryOptionCombo;成爲deMapping.ATM.des [5] .categoryOptionCombo;如果用戶從下拉列表中選擇ATM

任何人都可以幫忙嗎?

+0

可以請你澄清你是什麼意思?你想在你的例子中獲得ID爲「RBSK」的對象還是你想檢查一些東西?它不是完全理解 – Saar

+0

我想比較存儲在變量中的值與deMapping對象:像var a =「RBSK」那麼我怎樣才能比較demapping的這個字符串。 – Marshmellow

+2

對不起,您的解釋仍不清楚,您的變量a的值爲「RBSK」,您可以使用deMapping [a]'從deMapping對象中獲取RBSK的值,這就是您想要的嗎? – Saar

回答

0

這就是你如何從解映射值(在這種情況下,我提醒它,但你可以做任何你想要與它當然):

$(function() { 
    $("#drop").change(function() { 
    var selectedText = $(this).find("option:selected").text(); 
    alert(deMapping[selectedText].des.categoryOptionCombo); 
    }); 
});