dojo の ComboBox は option value="xxx" の xxx が取得できないらしい

えええー。

dojo 0.4 から 0.9 になって、ComboBox では value の部分がとれなくなったらしい。

<form name="jump">
  <select id="test" name="state1" dojoType="dijit.form.ComboBox"
          autocomplete="false" onChange="jumpURL()">
    <option selected value="1">test</option>
  </select>
</form>

とすると、

function jumpURL(){
  alert(document.jump.state1.value);
}

では「1」ではなく「test」がとれてしまう。

1 のほうを取得したいのなら ComboBox じゃなくて FilteringSelect を使えとのことらしい。

<form name="jump">
  <select id="test" name="state1" dojoType="dijit.form.FilteringSelect"
          autocomplete="false" onChange="jumpTo(arguments[0],1)">
    <option selected value="1">test</option>
  </select>
</form>

javascript のほう

function jumpTo(id, except)
{
if (id != except) location.href = "/home/"+id;
}