按值获取列表的RadioButton

时间:2012-10-23 09:41:23

标签: javascript jquery jsp

我有一个包含数据和单选按钮的表格,可以检查:接受,待定,拒绝。 在保存时我想检查是否有任何radiobutton仍然处于待处理状态。 我怎么能这样做?

Radio Buttons看起来像这样:

<td class="fit">
 <table>
  <tr>
   <td class="pad0"><div class=""><fmt:message key='status.registration.registered'/>:</div></td>
   <c:if test="${participation.registrationStatus == 2}"><td class="pad0 padL10"><spring:radiobutton path="assignmentFormArray[${i}].registrationStatus" value="2" checked="checked"/></td></c:if>
   <c:if test="${participation.registrationStatus != 2}"><td class="pad0 padL10"><spring:radiobutton path="assignmentFormArray[${i}].registrationStatus" value="2"/></td></c:if>
  </tr><tr>
   <td class="pad0"><div class=""><fmt:message key='status.registration.pending'/>:</div></td>
   <c:if test="${participation.registrationStatus == 1}"><td class="pad0 padL10"><spring:radiobutton path="assignmentFormArray[${i}].registrationStatus" value="1" checked="checked"/></td></c:if>
   <c:if test="${participation.registrationStatus != 1}"><td class="pad0 padL10"><spring:radiobutton path="assignmentFormArray[${i}].registrationStatus" value="1"/></td></c:if>
  </tr><tr>
   <td class="pad0"><div class=""><fmt:message key='status.registration.declined'/>:</div></td>
   <c:if test="${participation.registrationStatus == 6}"><td class="pad0 padL10"><spring:radiobutton path="assignmentFormArray[${i}].registrationStatus" value="6" checked="checked"/></td></c:if>
   <c:if test="${participation.registrationStatus != 6}"><td class="pad0 padL10"<spring:radiobutton path="assignmentFormArray[${i}].registrationStatus" value="6"/></td> </c:if>
  </tr>
 </table>
</td>

我尝试了以下Javascript函数:

function save(){
 alert($("input:radio[value='1']:checked"));
}

不幸的是,这不起作用。即使没有选择值为1的单选按钮,它也始终使用对象发出警报。

3 个答案:

答案 0 :(得分:0)

   $('input:radio[name=name of radio button]:checked').val();

这将为您提供所选单选按钮的值..您可以检查是否有待处理或接受或拒绝......

答案 1 :(得分:0)

我找到了解决方案。但感谢任何想要帮助的人:

function save() {
 var isPending = false;
 $("input[type='radio']:checked").each(function(){
    if ($(this).val() == 1){
        isPending = true;
    };
 });
 if (isPending){
    alert("isPending");
 }
}

答案 2 :(得分:0)

我认为你可以创建一个简单的布尔数组 它存储单选按钮的值 在改变单选按钮时,你需要每次都调用一个set方法 这就像一个bean来设置并获取表单元素的值,在保存时 你可以简单地检查一下布尔数组