Как изменить поле на основе выбора пользователя в HTML-выделении? - PullRequest
0 голосов
/ 21 декабря 2010

У меня есть список выбора, содержащий переменные из запроса

<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>

Как заполнить поле идентификатора округа?

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

Я никогда не использовал jQuery.Есть ли способ использовать только JavaScript?Как вы можете видеть, я пробовал JavaScript, однако я могу заполнить countyID только countyName, и мне нужно, чтобы он был заполнен countyID.

Ответы [ 2 ]

5 голосов
/ 21 декабря 2010

Просто из любопытства, почему вы используете #countyName# в качестве значений для ваших опций? Что делать, если в округе (ошибочно или нет) есть знак квотатона или что-то еще, что обернется вашим HTML.

Почему бы тебе не сделать:

<select name="countyName" onchange="countyID.value = this.value">
    <option value="#countyID#">#countyName#</option>
</select>
3 голосов
/ 21 декабря 2010

Разбивая его на функции, это должно работать для вас: Живой пример

<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">

Вам нужно ссылаться на свои элементы DOM через document.getElementById(), а не только на их идентификатор

Другой пример здесь

...