2009-09-03 70 views
0

问题是在客户端验证使用Java脚本。Radiobutton验证

与下面给出的问题的程序的重要部分..

... 
<form name="results" action="" method="post"> 
... 
<input type="radio" name="id" value="<%= id_edit %>" /> <!-- Don't bother about id_edit --> 
.... 
<input type="button" name="Edit" value="Edit" onclick="invoke(0)"><input type="button" name="Delete" value="Delete" onclick="return invoke(1)"> 
.... 

脚本,

function invoke(btn) 
{ 
    if(btn == 0) document.results.action="gev.do"; 
    if(btn == 1) document.results.action="del.do"; 
    document.results.submit(); 

} 

基本上什么我做的是,根据按钮的选择,我通过一个给servlet的值,用于更新或删除。

我的问题是,我如何验证单选按钮,也就是说,我可以任何一个人帮我写js来验证是否有任何一个单选按钮被选中。

我所有的努力都是静静的,我现在使用服务器端验证。

+0

与问题无关,但最好避免直接从'document'访问表单元素。这是一个非标准的传统扩展,可能在将来无法使用。相反,**通过特定的'document.forms'集合来访问** - 'document.forms ['results']' – kangax 2009-09-03 13:14:51

回答

0

使用checked属性检查单选按钮的状态。

0
function at_least_one_checked(radio_group) { 
    for (var i = 0, j = radio_group.length; i<j; i++) { 
    if (radio_group[i].checked) { 
     return true; 
    } 
    } 
    return false; 
} 

if (at_least_one_checked(document.forms.myForm.elements.myGroup)) { 
    // … 
} 
+0

那里是否有拼写错误?在应该是我 mikej 2009-09-03 14:02:17

+0

有一个错字,但不是那个。现在修复它。谢谢。 – Quentin 2009-09-03 14:43:42