0

我有一个包含来自查询的变量的选择列表

<tr>
  <td>County Name:</td>
    <td>
      <select name="countyName" onchange="countyID.value = countyName.value">
                <option>Select a County</option>
        <cfloop query = "getCounties">
        <option value="#countyName#" >#countyName#&nbsp;&nbsp;&nbsp;#countyID#</option>
        </cfloop>
    </select>
    </td>
</tr>

如何填写县 ID 字段?

<tr>
  <td>County ID:</td>
    <td><input type="Text" name="countyID">
     </td>
</tr>

我从来没有使用过 jQuery。有没有办法只使用 JavaScript?如您所见,我尝试了 JavaScript,但是我只能使用 填充countyIDcountyName并且我需要使用countyID.

4

2 回答 2

5

只是出于好奇,您为什么将#countyName#其用作选项的值?如果县(无论是否错误)有一个配额标记或其他会破坏您的 HTML 的东西怎么办。

你为什么不这样做:

<select name="countyName" onchange="countyID.value = this.value">
    <option value="#countyID#">#countyName#</option>
</select>
于 2010-12-20T22:03:33.000 回答
3

把它分解成一个对你有用的函数:Live Example

<table>
    <tbody>
        <tr> <td>County ID:</td> <td><input id="countyId" type="Text" name="countyID"> </td> </tr>
        <tr> <td>County Name:</td> 

            <td> 
                <select name="countyName" onchange="update(this)">
                    <option>Select a County</option> 
                    <option value="1234">asdf</option> 
                    <option value="4321">asdf2</option> 
                </select> 
            </td>
        </tr>
    </tbody>
</table>
<script>
    function update( elem ) {
    document.getElementById('countyID').value = elem.value;
    }
</script>

或者简而言之,只是改变

这:

<select name="countyName" onchange="countyID.value = countyName.value">

对此,它应该工作

<select name="countyName" onchange="document.getElementById('countyId').value = this.value">

您需要通过document.getElementById()而不只是它们的 id来引用您的 DOM 元素

这里的另一个例子

于 2010-12-20T22:02:04.950 回答