请问,HTML如何接受只有1或0作为其值的文本字段输入? 有人能告诉我吗?我在perl中实现了这个HTML。
以下是我的代码示例:
#!/usr/bin/perl
#index5.cgi
require 'foobar-lib.pl';
ui_print_header(undef, $module_info{'desc'}, "", undef, 1, 1);
ui_print_footer("/", $text{'index'});
#print "Content-type:text/html\n\n";
print qq~<html>
<link rel="stylesheet" type="text/css" href="style.css">
<body>
<div id="content">
<div id="bar">
<span><p>Data Gateaway</p></span>
</div>
<div id="main-container">
<table border="0" width="100%" height="100%">
<tr>
<td colspan="5">
<div id="button">
<form action="index.cgi">
<input type="submit" value="Back">
</form>
</div>
</td>
</tr>
<tr>
<td width="25%" align="left">
<div id="title"><span>BYPASS :</span></div>
</td>
<td width="20%">
<form method="POST" action="index7.cgi">
<td width="20%">
<table border="0" style=\"text-align:top;font-family:Arial, Helvetica, sans-serif;\" cellpadding="5">
<tr>
<td width="20%"><div id="data">Use either "1" or "0" to change value for <b>Basics Bypass</b>:</div></td>
</tr>
</table>
</td>
<td align="left" width="7%">
<table border="0" style=\"text-align:center;font-family:Arial, Helvetica, sans-serif;\" cellpadding="2">
<td>
<tr>
<td width="7%">
<input type="text" maxlength="1" name="voca" size="1">
</td>
</tr>
<tr>
<td width="7%">
<input type="text" maxlength="1" name="vocb" size="1">
</td>
</tr>
<tr>
<td width="7%">
<input type="text" maxlength="1" name="vocc" size="1">
</td>
</tr>
<tr>
<td width="7%">
<input type="text" maxlength="1" name="vocd" size="1">
</td>
</tr>
</td>
</table>
</td>
</tr>
<tr>
<td colspan="5">
<div id="description"><b>Description :</b></div>
</td>
</tr>
<tr>
<td colspan="5">
<div id="button">
<input type="submit" value="Change Default Settings"><input type="reset" value="Clear">
</form>
</div>
</td>
</tr>
</table>
</div>
</div>
</body>
</html>
~;
我必须添加哪些函数才能在HTML中输入的文本字段只能接受1或0的值?谁能教我怎么样?我需要使用if..else语句吗?
答案 0 :(得分:1)
在你的情况下,我认为最好使用带有1和0选项的dropbox,以使其更直观。如果您确实想使用文本框,请输入type = number,并且每次调用onchange事件时,验证当前值并在其无效时将其删除。
答案 1 :(得分:0)
要使0和1成为唯一接受的输入,请添加pattern
属性:
pattern="0|1"
但是(除了旧浏览器缺乏支持),这并不妨碍用户输入其他内容。它只是意味着在表单提交时,将检查数据并在检查未通过时发出错误消息。此外,除非您还使用属性required
。
要实际阻止用户输入0或1以外的任何内容,您需要使用一小段JavaScript。
通常,当您只想接受两个值时,通常会选择复选框。
所有这些方法只是为了帮助用户,而不是为了安全。您的服务器端代码应该在使用它之前检查数据。