私はPHP Codeigniterを使用しています。私のウェブサイトには、自分のデータベースにあるすべてのタスクを表示するサイドバーがあります。タスクテーブルには、Enterキーを押したときに更新できるようにしたいテキスト列があります。私は、現時点ではやったリダイレクトせずにPHPデータベースの更新フィールド
Enterキーを押したときに呼び出されるjavascript関数を作成することでした。私はwindow.location.hrefを使用している場合現時点で
function CursorKeyDown(e, id){
if(e.keyCode === 13){
var text = document.getElementById('area').value;
window.location.href = "<?php echo site_url('task/Task/validSuivi/')?>" + '/' + id + '/' + text;
//window.history.pushState('', '', "<?php echo site_url('task/Task/validSuivi/')?>" + '/' + id + '/' + text);
//alert("Enter was pressed was presses");
}
return false;
}
を、それがにリダイレクトリンク、または私のコントローラがそれを望む場所。私が望むのは、メソッドを呼び出すこと、データベースを更新することですが、リダイレクトなどはしません。それは可能ですか? Ajaxで?私はpushstateで何かを試しましたが、メソッドをトリガーせずにURLを変更するだけです。
コントローラでの私の方法は:
public function validSuivi($id_tache, $text)
{
$arr['suivi'] = $text;
$this->task_model->update(array('id_tache'=>$id_tache),$arr);
//redirect('task/task');
}
jqueryを使用していますか? –
@RanjeetSingh jQueryにタグが付けられています。 – Albzi
関数内でデータを保存するためにajaxリクエストを行うことができます。 –