使用jQuery和CodeIgniter执行客户端和服务器端验证

使用jQuery和CodeIgniter执行客户端和服务器端验证,jquery,validation,forms,codeigniter,plugins,Jquery,Validation,Forms,Codeigniter,Plugins,使用jQuery和CodeIgniter进行客户端和服务器端验证的正确方法是什么?我正在使用表单提交。我想使用jQuery验证插件()进行客户端验证和服务器端的CodeIgniter表单验证。然而,这两者似乎并没有结合在一起(或者我无法集中注意力)。有人能帮忙吗?无论是客户端验证还是服务器端验证,用户都应该看到一致的UI在输入字段旁边显示错误消息 [编辑]我似乎可以将服务器端错误传递给showErrors(),如下所示()。但是,如果我正在执行客户端规则中没有的额外服务器端验证(如检查用户名是否

使用jQuery和CodeIgniter进行客户端和服务器端验证的正确方法是什么?我正在使用表单提交。我想使用jQuery验证插件()进行客户端验证和服务器端的CodeIgniter表单验证。然而,这两者似乎并没有结合在一起(或者我无法集中注意力)。有人能帮忙吗?无论是客户端验证还是服务器端验证,用户都应该看到一致的UI在输入字段旁边显示错误消息


[编辑]我似乎可以将服务器端错误传递给showErrors(),如下所示()。但是,如果我正在执行客户端规则中没有的额外服务器端验证(如检查用户名是否已被使用),那么当用户从这些字段中签出时,验证插件将清除这些验证消息。

有什么不清楚的?每种方法都是不同的


在较高的层次上,基本上您将在提交表单数据之前使用客户端验证。如果客户端检查通过,则提交表单并运行验证服务器端。如果服务器端验证失败,则在重新呈现页面时,以及在验证/保存成功时,服务器端验证应打印错误。

是否不希望在客户端验证中复制服务器端验证规则和消息?这在核心CodeIgniter框架中不受支持


我在CodeIgniter维基上四处看看,有人写了一篇文章。我还没试过。但这可能就是你想要的。

我想做完全相同的事情,可以做到,但很棘手。您可以做的是创建可靠的服务器端验证方法,您可以使用Ajax远程调用这些方法。如果没有启用javascript,则只需使用正常的服务器端验证方法,而无需远程调用。这样,您将只有一个用于验证的代码库

然而,问题是,您的客户机验证会慢得多,因为它必须不断地与后端通信。一个更大的问题是,您不能使用一些功能强大的客户机验证库,因为它们都假设验证是在客户机上完成的,而不是远程完成的


我只是放弃了完成这件事。我必须在客户端和服务器上复制验证逻辑和错误消息。这并不理想,但最适合用户体验,您将能够利用优秀的前端库

如前所述,这是两件不同的事情

只需在Jquery中构建客户端验证,如果通过,则将其交给表单控制器并在那里运行validation/xss过滤

试试看,它将构建表单(视图)、模型、sql和控制器,其中包含验证。简单的豌豆


希望这能有所帮助。

jQuery验证插件做两件事:1)运行验证2)如果在运行服务器端验证时(在ajax提交后)验证失败,则显示错误消息,我希望第2步使用相同的代码。我是怎么做到的?刚刚注意到这篇文章上的日期。哦,天哪,对我来说没有神奇的绿色记号:(.投了赞成票并接受了答案…我还没有时间尝试yet@user9437856伙计,这个答案已经有8年历史了。我已经很久没有使用CodeIgniter了。@logic unit,没错。我正面临这个问题。还有其他帮助吗?