2012-01-04 10 views
0

JSONの新機能ですので、ここで最善を尽くします。私はHUDSと呼ばれるJSONオブジェクトを持っています。以下に2つのサンプルノードを示します(ちなみに、XMLのようにJSONでこれらのノードを呼び出せますか?)。JSONノードの値を別のノードの値で照会してください

var HUDS = [ 
{ 
    "DISTRICT": "100", 
    "BIOS": "BROWN", 
    "AREA_KM": "3663.158164", 
    "AREA_MI": "1414.347616", 
    "NAME": "100", 
    "REG": "1", 
    "ACRES": "905182", 
    "EMU_Name": "Purcell", 
    "Shape_Leng": "299746.4938", 
    "Shape_Area": "3663158164", 
}, 
{ 
    "DISTRICT": "101", 
    "BIOS": "THIER", 
    "AREA_KM": "1507.774765", 
    "AREA_MI": "582.152762", 
    "NAME": "101", 
    "REG": "1", 
    "ACRES": "372578", 
    "EMU_Name": "Salish", 
    "Shape_Leng": "229150.0655", 
    "Shape_Area": "1507774766", 
} 

]

私はJSONで「BIOS」フィールドに特定の値を指定するために使用されるフォームのドロップダウンを持っています。例えば、ユーザはドロップダウンメニューからBROWNを選択することができる。

次に、divを作成するために使用できるvarを作成したいと思います。ユーザーがBROWNを選択したときにたとえば、私は、私は、これは間違っている知っているが、多分それは私が

function dropDownAction(){ 
var tempBios=document.BIOSForm.BIOS.value; 
var tempEmuValue=HUDS.BIOS==tempBios.EMU_Name; 
document.getElementById("mydiv").innerHTML=tempEmuValue; 

}

ためつもりだ何を伝える「EMU_Name」

から値を埋めるために、私のdivを希望します

+0

の可能重複[オブジェクトの配列の要素を見つけるjavasccript](http://stackoverflow.com/questions/8234211/javasccript-find-element-in-array-of-object) –

+0

あなたの問題はJSONとは関係ありません。あなたは単にJavascript配列の中でJavascriptオブジェクトを見つけようとしています。 –

+0

ありがとう...下のソリューションは、私のJavascript配列を参照するのに最適です。 Felix、JSONとJavascript Arrayの違いは何ですか? – snowgage

答えて

1

試行:

<form name="BIOSForm"> 
     <select name="BIOS" onchange="dropdownaction();"> 
      <option value="BROWN">BROWN</option> 
      <option value="THEIR">THEIR</option> 
     </select> 
    </form> 
    <div id="emuname"> 

    </div> 

    <script type='text/javascript'> 
    var HUDS = [ 
    { 
     "DISTRICT": "100", 
     "BIOS": "BROWN", 
     "AREA_KM": "3663.158164", 
     "AREA_MI": "1414.347616", 
     "NAME": "100", 
     "REG": "1", 
     "ACRES": "905182", 
     "EMU_Name": "Purcell", 
     "Shape_Leng": "299746.4938", 
     "Shape_Area": "3663158164", 
    }, 
    { 
     "DISTRICT": "101", 
     "BIOS": "THIER", 
     "AREA_KM": "1507.774765", 
     "AREA_MI": "582.152762", 
     "NAME": "101", 
     "REG": "1", 
     "ACRES": "372578", 
     "EMU_Name": "Salish", 
     "Shape_Leng": "229150.0655", 
     "Shape_Area": "1507774766", 
    } 
    ] 

    function dropdownaction(){ 
     for(var x=0;x<HUDS.length;x++){ 
      var tempBios = document.BIOSForm.BIOS.value; 
      if(tempBios == HUDS[x].BIOS){ 
       document.getElementById("emuname").innerHTML = HUDS[x].EMU_Name; 
       break; 
      } 
     } 

    } 


    </script> 
関連する問題