0

我得到了一个已经在使用验证的表单,但我还想包括对单选按钮的验证。这是 html 表单的顶部,显示它已经使用了 onSubmit=""。

<form id="form_603298" class="appnitro" method="post" action="" onSubmit="javascript:return validate_form();">
<fieldset>

我将其添加到 html 表单的底部:

<fieldset>
    <legend>Status</legend>
    <input id="element_14_1" name="element_14" type="radio" value="1" />
    <label for="element_14_1">Active</label>
    <input id="element_14_2" name="element_14" type="radio" value="2" />
    <label for="element_14_2">Inactive</label>
    </fieldset>

现在我试图将单选按钮验证作为其余验证脚本的一部分。我试图将其包含在验证脚本的底部:

<!--================Validate drop down options==========================-->
<script type="text/javascript" language="javascript">
function validate_dropdown(){
    var dropdown = document.getElementById('element_11');
    var dropdown = document.getElementById('element_12');
    var dropdown = document.getElementById('element_13');
    if(dropdown.selectedIndex==0){
        alert("Please select drop down options");

    return false; 
    }else{

    return true;
    }
}

<!--================Validation start and end dates==========================--> 
    $(document).ready(function() {
        $("#dataStart").datepicker({
            minDate: 1,
            onSelect: function(theDate) {
                $("#dataEnd").datepicker('option', 'minDate', new 
Date(theDate));
            },
            beforeShow: function() {
                $('#ui-datepicker-div').css('z-index', 9999);
            },
            dateFormat: 'yy/mm/dd'
        });
        $("#dataEnd").datepicker({
            beforeShow: function() {
                $('#ui-datepicker-div').css('z-index', 9999);
            },
            dateFormat: 'yy/mm/dd'
        });

    });

<!--================Validate radio buttons==========================-->

if(document.getElementById('element_14_1').checked) {
//Active radio button is checked
}else if(document.getElementById('element_14_2').checked) {
//Inactive is checked
}

这不起作用。谁能指出我正确的方向。我是新手,所以我恳请任何解释都简单易懂。

4

2 回答 2

0
function checkStatus(evt) {
    var val = $("input[name=element_14]:checked").val();
    if (val == 'Active') {
        alert(val);//Active is checked
    } else {
        alert(val);//in active is checked
    }
}

$('input[name=element_14]:radio').change(checkStatus);

checkStatus();

这将解决您的问题..

于 2013-06-02T12:51:07.440 回答
0

从您提供的脚本来看,我假设您已经在页面中包含了 jQuery 库。如果是这样,请替换脚本的这一部分:

if(document.getElementById('element_14_1').checked) {
//Active radio button is checked
}else if(document.getElementById('element_14_2').checked) {
//Inactive is checked
}

有了这个:

$(':radio').change(function() {
    if($('#element_14_1').is(':checked')) { 
      alert("Active radio checked"); 
    }
    if ($('#element_14_2')) {
     alert("Inactive radio checked"); 
    }
});

这只是将更改事件添加到所有单选按钮,并在事件中检查您的单选按钮是否被选中。

这将显示一个单选按钮已修复的警报,但您可以将警报替换为您喜欢的任何内容。

如果这不是你所追求的,请告诉我,我会调整我的答案:P

于 2013-06-02T12:42:58.963 回答