1

私がしたいことは次のとおりです。

---ドロップリストに「変更時」があります(テーブルデータの「タイトル」を含む)

---これは変更時にjavascript関数を実行します

--- javascriptは、ドロップリストで選択されている対応するタイトルと同じテーブルのデータの「メッセージ」列をテキスト領域に入力します。

<li><label for="frm_precan">Canned Response</label>
            <span class="input">                        
                    <select id="frm_precan" name="precan" onchange="updateText();">
                            <option value="">--Please Select--</option>
                            <?php foreach($precan_list as $precan) : ?>
                            <option value="<?=$precan['id'];?>"><?=$precan['name'];?></option>
                            <?php endforeach; ?>            
                    </select>
            </span>
        </li>
        </ul>   
        <textarea style="width: 100%; margin: 0; padding: 0; border-width: 1; font-family: courier;" name="message" rows="10" id="text_area"></textarea>


        <script type="text/javascript">
        function updateText()
            {
            var value = $("#frm_precan option:selected").text();
            $('#text_area').val(value);;
            }
        </script>

これはコードであり、現在、選択したタイトルをテキスト領域に配置できます。ただし、ドロップダウンの選択したインデックスに従ってデータベースからデータを取得し、テキストボックスにデータを入力する必要があります。これどうやってするの?

4

1 に答える 1

1

テキストボックスを純粋なJavaScriptで埋めることはできません。JavaScriptはクライアント側で機能し、ドロップダウンメニューでの選択の変更時にデータベースにアクセスする必要があります。そのためには、ドロップダウン選択の変更で同じページを呼び出す必要があります。データベースからデータを取得した後、「echo」コマンドを使用してデータを含むテキストボックスを簡単に作成できます。

<?
if (isset($_POST['my_selection'])) {
    $result=mysql_query("SELECT * FROM `table` WHERE `column`='".mysql_real_escape_string($_POST['my_selection'])."'");
    $row=mysql_fetch_array($result);
    echo "<input type='text' value='".$row['column']."'>";
    echo "<input type='text' value='".$row['column1']."'>";
}
?>
<select name='my_selection'>
Your existing select box here...
于 2012-06-29T11:35:00.790 に答える