2011-03-30 47 views
0

嗯,我已經成功地把從各種例子一起以下,但是我不相信JavaScript函數甚至被稱爲,下面是我的代碼:的jQuery的getJSON - 可能的語法錯誤

的Javascript:

<script type="text/javascript" src="coding/jquery.js"></script> 
<script type="text/javascript"> 

    function showHint(quantity, price){ 
    document.getElementById("txtcost").innerHTML="being called values" + quantity + price; 
     $.getJSON('http://website.com/ecommerce/coding/validation/calprice.php', {q: quantity, p: price}, function(data){ 
      $('#txtcost').html('Total: ' + data.total); 
      $('#txtvat').html('VAT: ' + data.vat); 
     }); 

    } 

</script> 

顯示

<span id="txtcost" style="color:#060"></span> 
<span id="txtvat" style="color:#060"></span> 

PHP

<?php 
echo "being called"; 
function data() { 
$q = $_GET["q"]; 
$p =&$_GET["p"]; 

$total = $p * $q; 

if($q >= 10) 
{ 
    $total = ($total/10) * 9; 
    //echo '<strong>£ ' . $total . '</strong><span style="font-size:10px; font-weight:bold;"> Discount applied.</span>'; 
    echo json_encode(array('total' => $total, 'vat' => '10.00')); 
} 
else{ echo '<strong>£ ' . $total . '<strong>'; }} 
?> 

希望幫助

注:該代碼是不完美的,我想工作的初始功能。

編輯:

到目前爲止,我已經成功地建立:

函數被調用 正確的值被傳遞到函數

+0

看起來像你正在混合你的藥 - PHP和JavaScript。 – 2011-03-31 00:00:33

回答

2

一件事,你需要使用JavaScript引用對象屬性的點號,而不是PHP的箭頭運算符:

data.total 

而不是

data->total 
+0

謝謝,沒有解決問題,但它是一個開始 – Ash 2011-03-31 00:16:21

+0

你能發佈更多的代碼嗎?冒着問一個愚蠢的問題的風險,你已經在頁面上包含了jQuery,對吧?你已經把這個功能放在腳本標籤中了嗎?更多的代碼可以更容易地診斷問題的根本原因。 – karim79 2011-03-31 00:19:10

+0

更多附加程式碼,謝謝 – Ash 2011-03-31 00:47:53

0

我認爲與1號線的報價,你似乎一個問題來破壞到PHP,也許你需要更多的使用類似:

<input name="quantity" type="text" id="quantity" onkeyup="showHint(this.value, ' . $events[0]['price'] . ')" size="6" /> 

,但很難不完整的代碼說