如果输入值是文本则禁用,如果输入值为文本则启用

时间:2016-11-10 10:54:11

标签: php html

我想: 如果输入的值是文本,则禁用。 如果相同输入的值是数字,则启用。

代码是

 <input type="text" value ="<?php echo $row [0];? disable>

4 个答案:

答案 0 :(得分:1)

这将测试您的值是否为int1.0'1'等案例将被禁用):

<input type="text" value="<?php echo $row[0];?>"<?php echo !is_int($row[0]) ? ' disabled="disabled"' : ''; ?> />

这将测试您的值是否为float1'1'等案例将被禁用):

<input type="text" value="<?php echo $row[0];?>"<?php echo !is_float($row[0]) ? ' disabled="disabled"' : ''; ?> />

这将测试您的值是int还是float还是数字string(启用'1'等情况):

<input type="text" value="<?php echo $row[0];?>"<?php echo !is_numeric($row[0]) ? ' disabled="disabled"' : ''; ?> />

答案 1 :(得分:1)

您可以使用JS执行此操作:

此处一个文本框包含禁用的文本作为输入,另一个包含该编号的文本框已启用。

var x = document.getElementById("txtbox").value;
var y = document.getElementById("txtbox2").value;
if(isNaN(x)){
 document.getElementById("txtbox").disabled = true;
}


if(isNaN(y)){
  document.getElementById("txtbox2").disabled = true;
}
<input type="text" value ="txtbox" id="txtbox">
<input type="text" value="123" id="txtbox2">

答案 2 :(得分:0)

<input type="text" value ="<?php echo $row[0]; ?>" <?php if(is_numeric($row[0])) echo 'disabled="disabled"'; ?>>

答案 3 :(得分:0)

保持你的价值:

<input type="text" value ="<?php echo $row[0]; ?>" <?php if(!is_numeric($row [0])) echo "disabled"; ?> >

OR

<input type="text" <?php if(!is_numeric($row[0])){echo 'value="'.$row[0].'" disabled';}else{echo 'value="'.$row[0].'"';} ?>>

两者都有效。使用你更舒服的东西。 我希望它有所帮助