使用PHP在同一页面中计算

时间:2013-03-27 12:23:43

标签: javascript validation

我必须使用PHP在文本框中仅输入“ 0 ”或“ 1 ”或“ 0.5 ”作为输入。我已经使用了代码,只在文本框中输入数字:

<input type="text" id="tla1" name="tlaCasual"  maxlength="3" onkeyup="enterNumber()" onblur="calculate_casualleave()"  style="width:40px;" >

和javascript是:

<script language="javascript" type="text/javascript">
function enterNumber()
{    
    var e = document.getElementById('tla1');
    if (!/^[0-9]+$/.test(e.value)) 
    {
        alert("Please enter only number.");
        e.value = e.value.substring(0,e.value.length-1);
    }
}   
</script>

3 个答案:

答案 0 :(得分:1)

这与PHP无关,PHP是一种服务器端语言。你也没有指出你想要计算什么,但是 我想你要求正确的Regex只允许“0”,“0.0”,“0.5”,“1”和“1.0”,这是^(0(\.0|\.5)?|1(\.0)?)$

仅对“0”,“0.5”和“1”使用^(0(\.5)?|1)$

答案 1 :(得分:1)

我不明白为什么使用正则表达式来测试三个可能的值。

if((e.value!=1) && (e.value!=0.5) && (e.value!=0)){
 // error
 }
else{
 // ok
}

答案 2 :(得分:0)

我会假设您的问题是“它不起作用”。

正确的是,正则表达式不接受“0.5”,所以我想你只需将其更新为:

   function enterNumber(){

   var e = document.getElementById('tla1');

      if (!/^[0-9\.]+$/.test(e.value)) 
    { 
    alert("Please enter only number.");
    e.value = e.value.substring(0,e.value.length-1);
    }
    }   

希望这会有所帮助......