在表单中,我想使用在以下输入中输入的值进行数学运算:
<?php
function makeTextInputField($qnt_art)
$textqnt = ucfirst($qnt_art);
echo
<label for='{$qnt_art}'>Quantità Articolo:</br></label>
<input type='integer' name='{$qnt_art}' value='' /input>
</br></br>
<?php
function makeTextInputField($prz_unit)
$textprz = ucfirst($prz_unit);
echo
<label for='{$prz_unit}'>Prezzo Unità:</br></label>
<input type='double' name='{$prz_unit}' value='' /input>
</br></br>
<?php
function makeTextInputField($perc_sc)
$textperc = ucfirst($perc_sc);
echo
<label for='{$perc_sc}'>Sconto (decimali):</br></label>
<input type='double' name='{$perc_sc}' value='' /input>
</br></br>
一旦用户在上述输入中输入了值,我就会喜欢以下等式中使用的值:
$imp_art=(($qnt_art)*($prz_unit))- ((($qnt_art)*($prz_unit))*$perc_sc)
...并且在以下代码中将该等式的结果分配给$imp_art
,而无需按下&#34;编辑&#34;按钮:
<?php
function makeTextInputField($imp_art)
$textimp = ucfirst($imp_art);
echo
<label for='{$imp_art}'>Importo Articolo/i:</br></label>
<input type='double' name='{$imp_art}' value=''/input>
</br></br>
我该怎么做?
答案 0 :(得分:0)
1.正如Jacky Shek所提到的,你必须首先纠正基本语法,比如关闭php标签。
2.您如何知道用户输入的值为:&#39; $ qnt_art&#39;,&#39; $ prz_unit&#39;和&#39; $ perc_sc&#39;?
所以你必须听取所有三个输入的变化事件,例如:
<input type='integer' name='{$qnt_art}' value='' onchange="validate()"/>
&#13;
3.您肯定需要一个函数来使用JavaScript验证输入值。
function validate(){
if($qnt_art && $prz_unit && $perc_sc){//your check logic
//change the text of imp_art.
}
}
&#13;
4.如何检查用户是否已完成输入?如果他想输入&#34; 123&#34;对于$ qnt_art,你计算他何时输入&#34; 1&#34;或&#34; 12&#34;?所以也许你需要延迟检查。
function delayCheck(){
if(!this.lastTime){
this.lastTime = new Date().getTime();
this.timer = setTimeout(validate, 100);//delay 100ms to check
}else{
if(new Date().getTime() - this.lastTime < 100){
clearTimeout(this.timer);
this.timer = setTimeout(validate, 100);//delay 100ms to check
}
}
}
&#13;