2012-02-19 10 views
0

カテゴリの編集(jEditable)ドロップダウンリストがあります。オプションの1つは「新しいカテゴリ」です。PHPの応答からのトリガーjQuery関数

ユーザーが「新規カテゴリ」を選択してAjaxを使用してフォームを送信した場合、PHPがjQuery関数をトリガーしてオーバーレイダイアログボックスを開き、入力を求めるプロンプトが表示されるようにします。

jQuery関数をトリガーするためのPHPの入手方法を教えてください。

PHPコード...

function update() 
{ 
    $id = $this->input->post('id'); 
    $value = $this->input->post('value'); 

    $data = array('category_id' => $value); 
    $this->db->where('id', $id); 
    $this->db->update('transactions', $data); 

    $category = new Category(); 
    $category->where(array('id' => $value)); 
    $category->get(); 

    if ($value == 0) { 
     // Trigger jQuery function 
    } else { 
     echo $category->name; 
    } 

} 

私は(それが現在のボタンを経由してトリガです)トリガーするjQueryの機能...

//===== UI dialog =====// 
$("#new-cat-input").dialog({ 
    autoOpen: false, 
    modal: true, 
    buttons: { 
     Ok: function() { 
      $(this).dialog("close"); 
     } 
    } 
}); 

$("#open-new-cat").click(function() { 
    $("#new-cat-input").dialog("open"); 
    return false; 
}); 
+0

- AJAX呼び出しを行うと、最も重要なのは、ハンドルすなわちjavascript関数を:http://api.jquery.com/jQuery.ajax/
オートコンプリートテキストフィールドを持つw3cschool例を応答。 –

答えて

0

How to call a JavaScript function from PHP?

私はこれを読んでお勧めします質問の答えを返し、文字列を返す(またはエコーを返す)

<script type="text/javascript">$("#new-cat-input").dialog("open");</script> 
適切な場所

これはスクリプトが実行されたときに知っているか、それを実行するために、このスクリプトをevalに持っていないのいずれかにつながるよう実は、私は私の答えを撤回。

ajax-requestを送信し、他人の提案に応じて応答を処理することに固執します。

は、多分あなたはちょうどあなたがサーバーとクライアント側で何かをtriggureすることはできません

2

(あなたはdiv要素に追加することができます)いくつかのデータやページfragementsを返すページ全体との通話を返す呼び出しを区別する必要がありますPHPのようなサイドコードしかし、jQueryはajax呼び出しが行われた後に実行される成功メソッドを持っています。

$.ajax({ 
    url:"someurl.php", 
    success: function() 
    { 
    $('yourSelector').yourfunction(""); 
    } 
}); 

また、あなたは、PHPページにフォームデータを渡すとhtml/javascriptやジェイソンを返し、ページにそれを注入したりパース/コードを実行するのいずれかすることができます。
HERESにいくつかの便利が
AJAXのドキュメントリンク:あなたは、コードの操作部分を省略しているhttp://www.w3schools.com/php/php_ajax_php.asp

関連する問題