0

PHP で生成されたドロップダウンで、選択した項目の ID を取得しようとしています。現在、コンソールには「Uncaught TypeError: Object #exchanges option:selected has no method 'attr'」と表示され、何が問題なのかわかりません。

<html>
<head>
    <title>Administration</title>
    <style>
        #exchanges {
            width: 300px;
        }
    </style>

    <script src="http://codeorigin.jquery.com/jquery-2.0.3.min.js"></script>
</head>
<body>

    <?php populateDropDown(); ?>
    <button id="display_button">Display Information</button>
</body>

<script>
    $(document).ready(function(){
        $('#display_button').on('click', function(){
            var dropdown_id = ('#exchanges option:selected').attr('id');
            alert(dropdown_id); // doesn't work
        });
    });


</script>

</html>

PHP 関数:

function populateDropDown(){
$conn = connectPDO();

echo '<select id="exchanges">';

foreach($conn->query('SELECT * FROM exchange') as $row) {
    echo '<option id ='.$row['exchangeID'].'>'; 
    echo $row['exchange-name'];
    echo '</option>';
    }

echo '</select>';

}
4

1 に答える 1

3

まず、jQuery コードでドル記号を忘れました。

var dropdown_id = ('#exchanges option:selected').attr('id');

次のようにする必要があります。

var dropdown_id = $('#exchanges option:selected').attr('id');

また、PHP で次のように変更します。

echo '<option id ='.$row['exchangeID'].'>'; 

以下に:

echo '<option id="'.$row['exchangeID'].'">';

そして、今それが機能するかどうかを確認してください。

于 2013-10-15T18:31:24.907 に答える