2017-11-25 5 views
1

ルーキーPHP開発者:他の場所でそのように私の機能を実装しようと

  • コールのパラメータを持つ<a>からPHP関数を(これは私のメニューのリンクです)

  • 私はすでに私の楽しみを作成している

(これはコンテンツ領域である)別の<div>でPHPの関数の出力を返します。すべての作品はうまくいきますが、メニューから呼び出すことでそれを実装するために必要なステップを把握することはできません。私の推測では、AJAXが必要ですか?

任意のリードがそれを呼び出すには

+0

これはまさにアヤックスです。 https://www.w3schools.com/xml/ajax_php.aspあなたはPHPの例を見つけることができます – geekido

+0

AJAXは関連していません。あなたが探している用語は "API"です。 APIは、同期と非同期の両方が可能です。 –

+0

ただし、ブラウザの場所を変更せずにリクエストとデータを交換できるため、Ajax(非同期)を使用することをお勧めします。 – TheMintyMate

答えて

0

はいアヤックスが移動するための方法です。ここで

はjQueryとAJAXを使用した小さな例です。

<a role="button" data-someAction="myAction">My action</a> 
<div id="action_result"></div> 

<!-- load jQuery libraries --> 
<script src="https://code.jquery.com/jquery-2.2.4.min.js"></script> 

<script type="text/javascript"> 

    $(document).ready(function() { 

     $('a').click(function() { 

      $.ajax({ 
       type: 'POST', 
       url: 'action.php', 
       data: $(this).attr('data-someAction'), 
       success: function (data) { 

        $('#action_result').html(data); 

       } 
      }); 

     }); 

    }); 
</script> 

PHP

$code = <<<HERE 
    function someAction() { 
    echo 'awesome'; 
    } 
HERE; 

echo $code; 
0

を高く評価し、あなたはaがクリックされたかどうかを検出するためにイベントハンドラを設定する必要があります。すなわち:

HTML:

<a href="something.php" id="link"></a> 

JS:

function handler(){ 
    console.log("Clicked!"); 
    somefunction(); 
} 

document.getElementById("link").addEeventListener("click",handler); 

jqueryの:

$("#link").click(function(event){ 
    //ajax here... 
}); 

https://www.w3schools.com/jsref/met_document_addeventlistener.asp