同じことを行う方法について以前にいくつかの質問を投稿しましたが、人々は私を正しい方向に向けました。これが繰り返されている場合は、申し訳ありません。ただし、今回は、誰かが javascript で私を助けるために数秒を割くことができるかどうかを確認するために投稿しています。
別のテーブルにデータを送信するフォームがあり、「事前に用意された応答機能」を実装したいと考えています。onChange
これは、オプション リストのイベントが発生したときに、次のテキスト領域に適切なデータを入力する JavaScript を実行するドロップ リストの選択にすぎません。
すでにフォームにあるため、単純に別のフォームに入れて送信を使用することはできません。また、ページを更新せずにこれを実行できるようにしたいと考えています。
<form action="<?=base_url();?>ticket/addmessage/<?=$ticket_details['id'];?>/" enctype="multipart/form-data" method="post" name="message">
<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>
<ul>
<li><label for="message">Message<span class="req">*</span></label><span class="input"></span><br/></li>
</ul>
<textarea style="width: 100%; margin: 0; padding: 0; border-width: 1; font-family: courier;" name="message" rows="10" id="text_area"></textarea>
<button type="submit"><span>Add Message</span></button>
</form>
これは私の HTML フォームです。事前に缶詰にされたメッセージが SQL テーブルに格納されているため、SQL 経由で PHP を使用してオプション リストを設定します。
だから私がする必要があるのは、何らかの方法でこのJavascriptをリンクすることです(これはで呼び出されますonChange
):
function updateText()
{
var message = document.getElementById('frm_precan').value;
$('#text_area').val(message)
};
(非常に基本的なことは知っていますが、これは私が苦労しているところです)したがって、このコードは('frm_precan').value;
(テーブル内のIDであり、正しいメッセージを照会するフィールドです)...をphpファイルに渡したいと考えています次のようになります。
public function get_message($message_id)
{
$sql_list =
"
SELECT *
FROM ".$this->tables_automessages."
WHERE id = '".mysql_real_escape_string($message_id)."'";
$query = $this->db->query($sql_list);
if($query->num_rows() > 0)
{
foreach ($query->result_array() as $row)
{
$return[] =
array(
'message' => $row['message']
);
}
return $return;
}
else return false;
}
}
O、そして私はコードイグナイターを使用しているので、これも私が混乱している理由かもしれません. そのため、変数は JavaScript からコントローラーに出て、SQL クエリに移動する必要があります。
誰かが私の言いたいことを理解できたら、私は驚きます...そしてとても感謝しています。