簡體   English   中英

PHP表單一旦提交,允許用戶再次輸入以產生新值?

[英]PHP form once submitted allow user input again to produce new values?

填寫並提交表單后,將用戶帶到表單中指定的.php,並使用POST發送其輸入,然后回顯給用戶以查看其輸入,是否可以在同一頁面上是否具有按鈕或單選按鈕,這些按鈕或單選按鈕可以根據所單擊的按鈕對其輸入執行不同的操作?

當我收集到這與javascript和php無關,因為如果在瀏覽器端,則是服務器端。 並使用一種新的形式,也就是ajax,似乎使用了POST調用,該調用會丟失所有已回顯的原始值?

是否有解決方案和最佳實施方案的任何想法?

一個例子是卡路里計算器,提交用戶輸入的身高,體重等信息,然后使用這些值來計算卡路里。 因此,將回顯該值-但在同一頁上,用戶現在可以單擊一個按鈕,將卡路里分為50%碳水化合物,40%蛋白質,10%脂肪或另一個按鈕40 40 20,等等。

據我了解,您的問題是-頁面已刷新(或顯示了不同的頁面),並且您想保留輸入字段中先前狀態的值。 您可以按照以下步驟進行操作:

<form ...>
   Weight:<input name="weight" value="<?php $_REQUEST['weight']?>"/>
   ...

然后,當您通過sumbit形式調用此頁面時-它會在字段中顯示相同的值。

UPD:

JavaScript簡化的解決方案:

HTML:

Weight: <input type="text" id="weight" />
Calories: <input type="text" id="calories" />
Result:  <span id="result"></span>
<a href="javascript:calculate1()">Calulate formula 1</a> 
<a href="javascript:calculate2()">Calulate formula 2</a>

js部分:

function calculate1(){
  var w = document.getElementById('weight');
  var cal = document.getElementById('calories');  
  document.getElementById('result').innerHTML = w / cal;
}

function calculate2(){
  var w = document.getElementById('weight');
  var cal = document.getElementById('calories');  
  document.getElementById('result').innerHTML = cal / w;
}

當然,您可以將<a>設置為按鈕樣式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM