我有一个jQuery代码,根据用户选择选项显示/隐藏一些禁用的字段:
$('.fieldcontent').not('.info').hide();
$('#selector_cs').change(function() {
$('.fieldcontent').customFadeOut(100);
$('.' + $(this).val()).customFadeIn(900);
$('input').prop('disabled',false);
$('textarea').prop('disabled',false);
$('select').prop('disabled',false);
});
});
最令人头疼的是:如果一个或多个字段正在淡入,这些字段不会通过我的php验证,也不会提交表单。
如果在所有浏览器上禁用了javascript,则表单效果很好。
PHP验证
if(!isset($_POST['products'])) {
$products[2] = clean_var($_POST['products']);
}
else {
$error = 1;
$products[3] = 'color:#FF0000;';
}
所有字段
是否有任何php / jquery解决方案(请不要使用ajax,因为我不会再次制作整个表单,并且对ajax一无所知)?
提前感谢您的帮助
编辑:刚检测到另一个错误:如果jquery脚本淡化表单的另一部分,PHP不会再对其进行验证。为什么?从来没有像php-jquery这样的问题。
答案 0 :(得分:0)
如果您启用它们,但将属性type
更改为hidden
,则PHP应在您提交时看到这些字段。
<强>更新强>
以下场景如何:
type=hidden
字段,并将其当前值从A + B复制到“A +”B hidden
请注意,这不是由PHP引起的问题,而是由浏览器在提交表单时将表单字段解释为有效表单字段的方式/时间引起的