2012-02-02 63 views
0

我使用jQuery和jQuery,我試圖使用PHP函數而不是文件。jQuery.get()使用php文件中的函數

我當前的代碼

jQuery的

$.get("ajax2.php", function(data){ 
    $('#textbox').html(data);   
}); 

PHP

<?php    
..php code  
echo $theData; 
?> 

如何更新我的jQuery.get()函數調用一個函數在PHP,而不是文件。

<?php    
function test() 
{     
..php code  
echo $theData; 
}     
?> 
+0

我不明白你的意思,但是如果你想讓jQuery運行一個PHP函數,或者PHP運行一個jQuery函數 - 你不能。一個是客戶端,另一個是服務器端,並且根本無法相互交叉。 – Blazemonger 2012-02-02 19:25:18

+0

@ mblase75我可以想到至少有兩種方法可以做你認爲不可能的事情,而這傢伙正走在正確的軌道上。想想用你想調用的函數的名稱來調用帶有GET或POST參數的頁面,並使用switch語句來執行並僅從所需的函數返回數據。 – Relic 2012-02-02 19:32:21

+0

@Relic然後通過一切手段,發表一個答案。我可能只是不理解這個問題。 – Blazemonger 2012-02-02 20:15:06

回答

1

@ mblase75答案是打擊...創建Ajax調用是這樣的:

<script> 
$.get("ajax.php?command=dance", function(data){ 
    $('#textbox').html(data); 
}); 
</script> 

//------PHP(ajax.php)-------- 
witch($_GET['command') { 
    case 'delete': 
     delete_record(); 
     break; 
    case 'dance': 
     cut_a_rug(); 
     break; 
    default: 
     return; 
} 
function cut_a_rug(){ 
    //do something 
} 
2

Javascript無法直接調用PHP函數。他們是兩個完全不同的環境。您需要創建一個簡單的Web服務API,以允許外部代理(例如javascript)在PHP中調用事物。

<?php 

switch($_GET['command') { 
    case 'delete': 
     delete_record(); 
     break; 
    case 'dance': 
     cut_a_rug(); 
     break; 
    default: 
     return; 
} 

,而後通過點擊相應的網址 「呼叫」 功能:

http://example.com/yourscript.php?command=delete&id=42 
http://example.com/yourscript.php?command=dance&type=waltz 
相關問題