2013-01-23 82 views
0
$id = "123"; 

在book.php,傳遞$ id到外部jquery-book.php。麻煩獲得正確的值內PHP回聲jquery

<script type="text/javascript"> 
var id = '<?php echo $id; ?>'; 
</script>  

<script type="text/javascript" src="jquery-book.php"></script>  

jQuery的-book.php中,我有這些代碼:

<?php 
    function get_book($id) { 
    return ... 
    } 
?> 

$(document).ready(function(){ 
    var book_id = '<?php echo get_book(' + id + '); ?>'; //PROBLEM!!! 
    $('#main').html(book_id); 
}); 

如果我警報(ID);,我可以得到 「123」。但從上面的代碼,我得到「+ ID +」,而不是「123」。

爲什麼?

+0

Javascript在客戶端運行,在服務器上運行php。你需要Ajax來解決你的問題。 –

+0

你把警報放在哪裏? – marteljn

+0

不,他沒有。 richard試圖將一個JavaScript變量傳遞給PHP函數,解決這個問題的最好方法是使用AJAX。 –

回答

1

book.php中

<?php 

$id = "123"; 

include_once "jquery-book.php"; 

?> 
<html> 
    <head> 
     <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 

    <script type="text/javascript"> 
    var id = '<?php echo $id; ?>'; 
    </script>  

    <script type="text/javascript"> 
    $(document).ready(function(){ 
     var book_id = '<?php echo get_book($id); ?>'; //PROBLEM SOLVED!!! 
     alert(book_id); 
     $('#main').html(book_id); 
    }); 
    </script> 

    </head> 
    <body> 
     <div id="main"></div> 
    </body> 
</html> 

jQuery的book.php中

<?php 
    function get_book($id) { 
    return $id . '-success'; 
    } 
?> 

不滿意還?然後請使用Ajax-PHP組合。 http://openenergymonitor.org/emon/node/107