我有一个关于单选按钮和表单的jQuery问题。
我有标签内容设置,其中有5个标签设置,每个标签中都有一个表单。
每个表单由5个单选按钮和一个提交按钮组成。
我的jQuery设置验证首先进行了选择,然后使用AJAX提交表单,关闭当前选项卡(slideUp)并打开下一个选项卡(slideDown)。
我更喜欢的是删除提交按钮,并在点击任何单选按钮时提交表单。因此,单击单选按钮提交表单,关闭当前选项卡并打开下一个。
我需要做些什么来点击任何一个单选按钮将提交格式并关闭标签。我的jQuery代码发布在下面。
$("#selfAss1").validate({
invalidHandler: function(e, validator) {
var errors = validator.numberOfInvalids();
if (errors) {
var message = errors == 1
? 'You missed 1 field. It has been highlighted below'
: 'You missed ' + errors + ' fields. They have been highlighted below';
$("div.error span").html(message);
$("div.error").show();
} else {
$("div.error").hide();
}
},
onkeyup: false,
submitHandler: function() {
$.post('/_action.php', $("#selfAss1").serialize(), function(data) {
$('.pane1').slideUp('slow');
$('#result1').html(data);
$('.pane2').slideDown('slow');
});
},
debug:true
});
答案 0 :(得分:27)
从一张幻灯片到下一张幻灯片的转换由submitHandler
处理,因此所有单选按钮需要做的是点击提交表单,并牢记:
$('input[type=radio]').on('change', function() {
$(this).closest("form").submit();
});
一些笔记;首先,我在这里使用了属性选择器,您可能希望将其更改为类或更符合您需求的类。其次,您可能还希望包含一个“返回”方法,以允许人们更改其选择。使用此方法,如果单击一次,就是它。
答案 1 :(得分:6)
试
<input type="radio" name="something" onclick="document.getElementById('myForm').submit();"/>
或
<input type="radio" name="something" onclick="this.form.submit()">
在jquery中尝试类似
的内容$('input[type=radio]').click(function() {
$("form id or class").submit();
});
答案 2 :(得分:1)
这对我有用:
<input name="myRadio" type="radio" value="1" onchange="this.form.submit()"/>
答案 3 :(得分:0)
尝试一下!
$('input[type=radio]').on('change', function() {
$('input[type=submit]').click();});