如何在html表单中只允许文本框中的预定值

如何在html表单中只允许文本框中的预定值,html,forms,Html,Forms,我有一个值列表,我只希望允许在html表单中的文本框中输入这些值,以便执行操作。该操作将最终用户带到某个网页。但我希望最终用户只输入某些值。可以允许他们输入其他内容,但他们将收到通知/警告,指出他们输入了错误的代码 比如说,预先确定的值列表中有三个是这样的 GGG01、OOO03和MTM02 正如我所说的,终端用户应该被允许输入任何东西,但只有当他们输入这三个代码中的一个时,他们才会被带到特定的网页。我尝试过验证脚本,但似乎没有任何效果。我错过了一些东西,我打赌这很容易 下面是我尝试的,但密码字

我有一个值列表,我只希望允许在html表单中的文本框中输入这些值,以便执行操作。该操作将最终用户带到某个网页。但我希望最终用户只输入某些值。可以允许他们输入其他内容,但他们将收到通知/警告,指出他们输入了错误的代码

比如说,预先确定的值列表中有三个是这样的

GGG01、OOO03和MTM02

正如我所说的,终端用户应该被允许输入任何东西,但只有当他们输入这三个代码中的一个时,他们才会被带到特定的网页。我尝试过验证脚本,但似乎没有任何效果。我错过了一些东西,我打赌这很容易

下面是我尝试的,但密码字段工作不正常。请帮忙。先谢谢你

<?xml version="1.0" encoding="utf-8"?>

<!DOCTYPE html
   PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>
      Example for Validator
    </title>
    <style type="text/css" xml:space="preserve">
BODY, P,TD{ font-family: Arial,Verdana,Helvetica, sans-serif; font-size: 10pt }
A{font-family: Arial,Verdana,Helvetica, sans-serif;}
B { font-family : Arial, Helvetica, sans-serif; font-size : 12px;   font-weight : bold;}
.error_strings{ font-family:Verdana; font-size:10px; color:#660000;}
</style><script language="JavaScript" src="gen_validatorv4.js"
    type="text/javascript" xml:space="preserve"></script>
  </head>
  <body>
    <form action="" name="myform" id="myform">
      <table cellspacing="2" cellpadding="2" border="0">
        <tr>
          <td align="right">
            First Name
          </td>
          <td>
            <input type="text" name="FirstName" />
          </td>
        </tr>
        <tr>
          <td align="right">
            Last Name
          </td>
          <td>
            <input type="text" name="LastName" />
          </td>
        </tr>
        <tr>
          <td align="right">
            EMail
          </td>
          <td>
            <input type="text" name="Email" />
          </td>
        </tr>
        <tr>
          <td align="right">
            Password
          </td>
          <td>
            <input type="text" name="pwd1" />
          </td>
        </tr>
        <tr>
          <td align="right">
            Address
          </td>
          <td>
            <textarea cols="20" rows="5" name="Address"></textarea>
          </td>
        </tr>
        <tr>
          <td align="right">
            Country
          </td>
          <td>
            <select name="Country">
            <option value="" selected="selected">
              [choose yours]
            </option>
            <option value="008">
              Albania
            </option>
            <option value="012">
              Algeria
            </option>
            <option value="016">
              American Samoa
            </option>
            <option value="020">
              Andorra
            </option>
            <option value="024">
              Angola
            </option>
            <option value="660">
              Anguilla
            </option>
            <option value="010">
              Antarctica
            </option>
            <option value="028">
              Antigua And Barbuda
            </option>
            <option value="032">
              Argentina
            </option>
            <option value="051">
              Armenia
            </option>
            <option value="533">
              Aruba
            </option></select>
          </td>
        </tr>
        <tr>
          <td align="right"></td>
          <td>
            <div id="myform_errorloc" class="error_strings">
            </div>
          </td>
        </tr>
        <tr>
          <td align="right"></td>
          <td>
            <input type="submit" value="Submit" />
          </td>
        </tr>
      </table>
    </form><script language="JavaScript" type="text/javascript"
    xml:space="preserve">//<![CDATA[
//You should create the validator only after the definition of the HTML form

    function DoCustomValidation()
{
  var frm = document.forms["myform"];
  if(frm.pwd1.value != frm.pwd2.value)
  {
    sfm_show_error_msg('The Password and verified password does not match!',frm.pwd1);
    return false;
  }
  else
  {
    return true;
  }
}

  frmvalidator.setAddnlValidationFunction(DoCustomValidation);
//]]></script>
  </body>
</html>

验证器示例
正文,P,TD{字体系列:Arial,Verdana,Helvetica,无衬线;字体大小:10pt}
{字体系列:Arial、Verdana、Helvetica、无衬线;}
{字体系列:Arial,Helvetica,无衬线;字体大小:12px;字体重量:粗体;}
.error_字符串{字体系列:Verdana;字体大小:10px;颜色:#660000;}
名字
姓
电子邮件
暗语
住址
国
[选择你的]
阿尔巴尼亚
阿尔及利亚
美属萨摩亚
安道尔
安哥拉
安圭拉
南极洲
安提瓜和巴布达
阿根廷
亚美尼亚
阿鲁巴
//

我认为我们正在寻找不连接数据库的选项(这将使答案更长)。从一个方向和一个特定的选项开始(对于您的情况,这可能不是最有利或最有效的选项):

首先,
form
标记应该有一个
method
属性

<form action="confirm.php" method="POST" name="myform" id="myform">

您是否有理由不能使用最明显的解决方案来解决原始问题,即
select
元素?或者一个不太明显但通常更好的解决方案:一组具有相同
名称
属性的单选按钮?我试着按照你的建议去做Mike_Moto,但它不起作用。在这里尝试一下,你可以在这里下载文件-我可能做错了什么。我非常感谢您的努力。我想我会使用java脚本来完成这一步,因为如果您进入右上角,您会看到一个可以输入代码的地方——如果最终用户输入了错误代码,我希望在该页面上出现错误警告。如果最终用户输入了正确的代码——比如说GGG01、OOO03、MTM02这三个代码中的一个,那么他们就会转到我希望他们转到的页面。
if ($_POST['LastName']=="GGG01"){
    header("nameofnewwebsite.php");
}else{
    header("nameofanotherwebsite.php");
}