我试图用JQuery来完成某些事情,而我似乎无法让它发挥作用。很多这与我不是一个JQuery人有关,所以我确定这都是错的。
我有一个非常大的表单,根据选择的单选按钮值,某些表单部分不会显示的条件。所以我所做的是,当选择某个值时,它会添加或删除一个" hide-me" class为div元素,因此所有表单字段都不显示。问题是,如果我有一些要求,表单将无法提交,您无法填写一个不可见的字段。所以我想要做的是在提交表单时,首先应该使用hide-me类来获取任何div中的所有子输入元素,并设置disabled属性。
我该如何做到这一点?
以下是一些示例代码:http://codepen.io/amarit84/pen/KMgKRd
$('#test_form_id').submit(function() {
$('.hide-me').children(":input").prop("disabled", true);
});
答案 0 :(得分:2)
只是把它放在你的submit()之外,你的例子没有用,所以我在你的codepen上添加了jquery。
$('.hide-me').children(":input").prop("disabled", true);
$('#test_form_id').submit(function() {
});
它将始终触发填充隐藏的表单,因为禁用隐藏输入的jquery代码在submit()中,HTML5验证阻止您触发提交,这就是为什么禁用隐藏输入的代码不会执行。{{3 }}
答案 1 :(得分:0)
试试这个:
$('.hide-me').children("input").attr("disabled", true);
但是,因为你执行此操作onsubmit
,我不明白你是否尝试这样做。无论如何页面重新加载......