我有一个复杂的表单(CActiveForm),由4个问题组成,带有几个复选框列表和单选按钮。当用户访问页面时,只有第一个问题可见。只有在上一个问题(jquery)中至少选中一个复选框时,才会出现每个下一个问题。
现在,如果我提交表单,但其验证失败,则错误消息会显示在表单上方,所有复选框都将变为未选中状态,除第一个复选框外的所有问题都将消失。
是否存在一种简单的方法来保存选中的复选框并在表单验证失败时显示所有问题?
也许yii1为此有一些标准方法?还是唯一的解决方案是使用Ajax验证?
答案 0 :(得分:0)
我建议您使用诸如依赖下拉列表ask show here之类的方法,或者如果您使用yii2 see here
答案 1 :(得分:0)
您可以使用本地存储,通过PHP或Java中的indexDB之类的SESSION变量来在验证之前每次提交时存储表单值。然后,如果验证失败,请使用保存的表单数据重新填写表单。