我正在使用Django和Python来编写一个网站。在一个网页中,我有一个HTML表单,带有一组单选按钮和一个提交按钮。在表单提交时,我想验证是否已经选择了一个单选按钮,而不是默认情况下所有单选按钮都保持黑色。
这样做的一种方法是在服务器端进行检查。我会检查POST数据,并查看是否已设置相关字段,指示所选单选按钮。如果此字段尚未设置,那么我将返回同一网页,并显示消息“请再试一次”。这对我来说很好。
然而,这似乎有点矫枉过正。有什么方法可以在Javascript(jQuery)中执行相同的检查,并返回相同的网页和错误消息吗?
答案 0 :(得分:2)
您可以使用Django-parsley将客户端验证附加到现有表单。
答案 1 :(得分:1)
使用JQuery验证代码将是这样的。
$('form').submit(function(){
if($('input[type=radio]:checked').val() == ''){
alert('please select radio buttion');
return false;
}
}
答案 2 :(得分:1)
默认情况下,您可以通过在要检查的按钮的输入字段中添加checked
来检查一个单选按钮。这样可以确保始终至少选择一个输入框。
<input type="radio" checked />
答案 3 :(得分:1)
HTML&amp; JavaScript的:
<html>
<head>
<script type="text/javascript">
function validateRadioButtons(){
var radio = $('input:radio[name="IdName"]:checked');
if(radio.length == 0)//no buttons selected
{
$('ValidationError').text("you haven't selected any buttons!");
return;
}
$('ValidationError').text(radio.val()+' is selected');
}
</script>
</head>
<body>
<form>
<div>
<span>
<input type="radio" name="IdName" value="Id1"/>
Id1
<input type="radio" name="IdName" value="Id2"/>
Id2
</span>
<div id="ValidationError" name="ValidationError">
</div>
</div>
<input type="submit" value="Submit" onclick="return validateRadioButtons();" />
</form>
</body>
</html>