我只是希望我的表格是客户的具体答案的关键,如何

I just want my form to be key with a specific answer by my customer , how to?

本文关键字:答案 如何 我的 希望 表格 客户      更新时间:2023-09-26

我不想在我的网站上使用验证码。 因此,我只想让我的客户在我创建的表格中键入特定的答案。

例如 = 什么是 3 + 4 ? 我只希望该字段是带有数字 7 的键。 例如,如果我的客户键入任何其他数字,然后键入 7,则不会提交表单并要求正确答案。

我正在尝试使用 spry 小部件来执行此技巧,但即使在更改 html 代码后也多次失败。

代码如下:

<span id="sprytextfield4">
      <input type="text" name="huamn" id="huamn" />
      <span class="textfieldRequiredMsg">
          Please provide an answer
      </span>
</span>
var sprytextfield4 = new Spry.Widget.ValidationTextField("sprytextfield4", "text", {minValue:7, maxValue:7, maxChars:1});

如果你想在客户端上使用JavaScript进行验证,这里有一个我使用的快速而肮脏的方法。

注意:您仍然需要在服务器上验证相同的问题,以确保垃圾邮件发送者没有通过禁用Javascript来规避

jQuery

$('#submit').click(function (event) {
    var color = $('#color').val().toLowerCase();
    if (color != 'orange') {
        alert('incorrect');
    } else {
        alert('yay!');
        // submit the form
        // BUT DON'T FORGET TO VALIDATE input.color AGAIN ON THE SERVER.
    }
});

http://jsfiddle.net/g4Gu8/1/

如果您的网站对垃圾邮件发送者的重要性较低...IE:不是StackOverflow或Redit,你通常可以摆脱这种类型的验证,几乎可以避免收到垃圾邮件。如果您的网站成为攻击的直接目标,并且编写机器人是为了规避这种非常低级别的保护,您应该考虑使用众多预构建的验证码库之一,并实现服务器端和客户端验证。我无法忍受图像验证码,所以我更喜欢一种侵入性较小的"人工验证"方法。