2013-01-10 87 views
0

如果我有非常基本的形式;'實時更新'與PHP表單字段

<input type = 'text' name = 'input1' value = '2'> 
<input type = 'text' name = 'input2'> 
<input type = 'text' name = 'answer'> 

有沒有用php的方式,我可以有answer盒是「活」,使後我放10第二個框會顯示20的價值?

我很熟悉如何通過提交來完成此操作。但是我的目標是沒有刷新頁面

舉一個稍微詳細的形式:根據設定值棱鏡

計算容積,以及用戶輸入長度

$sideOfSquare; 
echo "<input type = 'text' name = 'input1'>"; 
ehco "<input type = 'text' name = 'squareSide' value ='.$sideOfSquare.'>; 
echo "<input type = 'text' name = 'answer' value = 'INPUT1 * $sideOfSqaure * $sideOfSquare'>; 
+2

阿賈克斯是唯一的出路 –

+0

@ EdwinAlex我以前從未與ajax合作過。這是否相對簡單,你偶然有鏈接到教程或類似的東西? – mhopkins321

+0

如果計算答案的函數實際上很簡單,或者僅僅是一個例子,你可以用javascript來做到這一點? – Popnoodles

回答

1

可以jQuery的做這也是

$("#input2").keyup(function() { 
    var input2 = $(this).val(); 
    var answer = parseInt(input2) * parseInt($("#input1").val()); 

    $("#answer").val(answer);  

}); 

確保兩兩件事。

1)你應該保持這些ID在適當的文本框。

2)驗證輸入得到的數值只

+0

我回復了您的評論。上面的例子被簡化了。但不是太多。我已經使用PHP從數據庫中提取所有數據。我將修改我的問題 – mhopkins321

+0

我可以複製粘貼此內容,並用我的變量名稱替換input1,input2和answer,但這並不能真正幫助我理解將來如何使用這些內容。如果你不介意我問,1.)這是否在'<?php'標籤內? 2.)'#answer'我該如何在表單中引用這個值? 3.)這個文本是否需要在數據所在的位置之前或之後(即頭部,身體的起始部分,身體的末端)。在此先感謝您的幫助 – mhopkins321

1

這裏是你如何使用jQuery的ajax做你想做的事,PHP: (http://api.jquery.com/jQuery.ajax/

// current file 
$("#input2").keyup(function() { 
    var input2 = $(this).val(); 
    jQuery.ajax({ 
     url: 'myfile.php?input2=' + input2 
    }).done(function(data){ 
     $(this).val(data); 
    }); 

}); 


// myfile.php 
<?php $input2 = $_GET['input2']; 
echo $input2*2; //what you echo here will be sent to data in the success function above. 
+0

我可以複製粘貼該內容,並用我的變量名稱替換input1,input2和answer,但這無法真正幫助我理解將來如何使用這些內容。如果你不介意我問,1.)這是否在'<?php'標籤內? 2.)'#answer'我該如何在表單中引用這個值? 3.)這個文本是否需要在數據所在的位置之前或之後(即頭部,身體的起點,身體的終點)? 4.)你有'當前文件'和'myFile'。有沒有理由不包含在同一個文件中的所有內容?它仍然是'生活'嗎?在此先感謝您的幫助 – mhopkins321