有如下的代码,现在需要写段javascript,当我从listbox里选中一个选项,其他3个输入域,分别取table里对应listbox选中的值的那行的其他3个TD里的值。
如果我选择company1,则3个输入域的值为12,34,56。希望大家能给个DEMO。谢谢<label>
<select name="select">
  <option value="请选择" selected="selected">请选择</option>
  <option value="company1">company1</option>
  <option value="company2">company2</option>
  <option value="company3">company3</option>
</select>
<input type="text" id="a1" />
<input type="text" id="a2" />
<input type="text" id="a3" />
</label>
<table width="246" height="122" border="1" id="tbl">
  <tr>
    <td width="61">company1</td>
    <td width="53">12</td>
    <td width="51">34</td>
    <td width="53">56</td>
  </tr>
  <tr>
    <td>company2</td>
    <td>54</td>
    <td>76</td>
    <td>87</td>
  </tr>
  <tr>
    <td>company3</td>
    <td>44</td>
    <td>33</td>
    <td>22</td>
  </tr>
</table>
<p>&nbsp;</p>

解决方案 »

  1.   

    <script>
    function doChange(){
    var sel = document.getElementsByName("select")[0];
    var val = sel.options[sel.selectedIndex].value;
    var tbl = document.getElementById("tbl");
    for(var i=0;i<tbl.rows.length;i++){
    if(tbl.rows[i].cells[0].innerText == val){
    document.getElementById("a1").value = tbl.rows[i].cells[1].innerText; 
    document.getElementById("a2").value = tbl.rows[i].cells[2].innerText; 
    document.getElementById("a3").value = tbl.rows[i].cells[3].innerText; 
    break;
    }
    }
    }
    </script>
    <label>
    <select name="select" onchange="doChange()">
      <option value="请选择" selected="selected">请选择</option>
      <option value="company1">company1</option>
      <option value="company2">company2</option>
      <option value="company3">company3</option>
    </select>
    <input type="text" id="a1" />
    <input type="text" id="a2" />
    <input type="text" id="a3" />
    </label>
    <table width="246" height="122" border="1" id="tbl">
      <tr>
        <td width="61">company1</td>
        <td width="53">12</td>
        <td width="51">34</td>
        <td width="53">56</td>
      </tr>
      <tr>
        <td>company2</td>
        <td>54</td>
        <td>76</td>
        <td>87</td>
      </tr>
      <tr>
        <td>company3</td>
        <td>44</td>
        <td>33</td>
        <td>22</td>
      </tr>
    </table>
      

  2.   

    谢谢楼上的,IE下测试没问题,但是firefox下,运行没反应,也不报错?能否再修改1下,谢谢谢谢
      

  3.   

    tbl.rows[i].cells[0].innerText  改为tbl.rows[i].cells[0].innerHTML ,
    FF测试通过了。