Разделить содержимое select на разные поля - PullRequest
0 голосов
/ 29 июня 2011

Я пытаюсь отправить значения, разделенные каналом, в 2 разных поля.Почему-то это не сработает.

Есть идеи?

<script type="text/javascript">
function folder(selectVeld)
{
   // Stuur informatie terug
   var id = (selectVeld.options[selectVeld.selectedIndex].value).split('|');
   // Id
   document.getElementsByName('folder_id').value = id[0];
   // Naam
   document.getElementsByName('folder_naam').value = id[1];
}
</script>

<tr>    
    <td><?php echo $lang['folder']; ?>:</td>
    <td><select name="folder" onChange="folder(this)">
    <option value="geen"><?php echo $lang['no_folder']; ?></option>
    <?php
        $sql = "SELECT id, naam FROM 2_folder ORDER BY naam ASC";
        $res = mysql_query($sql,$con);  
        while ($row = mysql_fetch_assoc($res)){
    ?>
        <option <?php if($row['id'].'|'.$row['naam'] == $folder){ echo 'selected="selected"'; } ?> value="<?php echo $row['id'].'|'.$row['naam']; ?>"><?php echo $row['naam'] ?></option>
    <?php } ?></select>
    </td>
</tr>

    <input type="text" name="folder_id" value="<?php echo $folder_id; ?>" size="5" style="background-color: #e7e7e9" readonly="readonly" />

    <input type="text" name="folder_naam" value="<?php echo $folder_naam; ?>" size="5" style="background-color: #e7e7e9" readonly="readonly" />

Ответы [ 2 ]

2 голосов
/ 29 июня 2011

document.getElementsByName возвращает array элементов, даже если существует только один элемент с таким именем.

document.getElementsByName('folder_id')[0].value = id[0];
document.getElementsByName('folder_naam')[0].value = id[1];

должен сделать свое дело. jsfiddle sample

0 голосов
/ 01 июля 2011

Я избежал этой проблемы, используя только folder_id и находя имя с отдельным запросом после отправки формы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...